我写了一些代码,但它都位于一个文件中。现在工作很烦人,因为它太长了。所以我想我应该把所有的功能放在不同的文件中,然后导入它们。我只是不确定要这样做的最佳方式。Python代码组织帮助:导入函数
目前代码:
import glob, os
import csv as csv
import pandas as pd
import numpy as np
import sys
def create_list(var):
stuff
def store_table(var):
stuff
def geo_info(var):
stuff
def factor_loads(var):
stuff
def add_loads(var):
stuff
def calc_bypass_stress(var):
a lot of stuff
def calcloads(var):
tons of stuff and calls other functions above
for i in list:
for k in another_list:
calcloads(var)
我在想,我可以把它分解了,这样做的查询功能和创建表在tables.py
;任何计算的东西是calc_stuff.py
,我从thehead.py
运行一切:
tables.py
def create_list(var):
stuff
def store_table(var):
stuff
def geo_info(var):
stuff
def factor_loads(var):
stuff
def add_loads(var):
stuff
calc_stuff.py
def calc_bypass_stress(var):
a lot of stuff
def calcloads(var):
tons of stuff and calls other functions above
thehead.py
import glob, os
import csv as csv
import pandas as pd
import numpy as np
import sys
from tables import *
from calc_stuff import *
for i in list:
for k in another_list:
calcloads(var)
一些问题:
1)请问这项工作?
2)几乎所有的函数都使用Pandas,Numpy等等。我是否需要将这些包导入到每个.py文件中?或者只是在thehead.py
?
3)从thehead.py
我打电话给位于calc_stuff.py
的函数(calcloads
),它使用位于tables.py
的函数。我是否应该将所有功能保存在一个文件中,而不是将功能分成不同的文件?
1)当你说导入包中的每个。 py文件,我是否也将我创建的文件导入到每个文件中? 2)我会'calc_stuff.py文件中的calc_stuff import *',但是? 3)我是否将'from calc_stuff import *'放在tables.py中? – user1964692
1)是的。 2)不,脚本不应该尝试导入自己。 3)是和否。你需要一个import语句,但在Python中强烈阻止通配符导入,所以我建议'import calc_stuff'。 – tjohnson