如何从 main.py Bottle 调用具有多个功能的现有 python 文件

How do I call an existing python file with multiple functions from a main.py Bottle

目前,我的代码是这样的,我上传了 2 个文件,但我需要通过另一个现有的具有多种功能的 parse.py 文件在临时文件中处理它们。

如何在 Templates.py 中调用它们?

我尝试添加 import parse.py 但它会出错。

templates.py

@route('/')
def index():
return template('index')

@route('/', method='POST')
def upload():
incfile = request.files.get('uploadinc')
datfile = request.files.get('uploadhex')

macro, ext1 = os.path.splitext(incfile.filename)
data, ext2 = os.path.splitext(datfile.filename)
if ext1 not in ('.txt'):
    return 'File extension not allowed.'
if ext2 not in ('.txt'):
    return 'File extension not allowed.'
incfile.filename = 'macro.txt'
datfile.filename = 'data.txt'

curr_dir = os.getcwd()
print(curr_dir)
temp_dir = os.path.join(curr_dir, r'temp01')
if os.path.exists(temp_dir):
   shutil.rmtree(temp_dir)
os.makedirs(temp_dir)

incfile.save(temp_dir)  
datfile.save(temp_dir)   
clean_up(temp_dir)  // gives error

@route('/')
def clean_up():      // gives error

parse.py

 import os, sys, re, binascii

 def clean_up():

    if os.path.exists("dataparse.txt"):
            os.remove("dataparse.txt")
    else:
            print("Creating new files...")

    if os.path.exists("out3.txt"):
            os.remove("out3.txt")
    else:
            print("Creating new files...")

def parse_hexdump():
    a = open("data.txt","r")
    b = open("dataparse.txt","a")
    w = open("out3.txt","a")
   str = a.readline()
   w.write(str)
   for line in a:
   if line.startswith('MD') or line.startswith('END OF DISPLAY'):
     continue
   else:
     strline = line[5:40:]  # Slice lines from 5-40 to another file
     b.write(strline+'\n')
  b.close()
  w.close()

只是 import parse,您不要将 .py 放在导入语句的末尾。由于您似乎只想使用函数而不是调用 parse.clean_up,因此您可以改为 from parse import clean_up。文件 parse 需要在您的本地目录中(您所在的 运行 是 python 解释器)或在您的 PYTHONPATH 环境变量中。