路径:-d:\competitive\u programming\
文件夹内容:-algorithms.py
和my_submittion.py
algorithms.py
包含有用的函数,如:-Function1(a,b),Function2(),等等
在本地工作时我可以在my_submittion.py
中使用algorithms.py
中的函数,使用:-
from algorithms import Function1, Function2
processed_number = Function1(x, y)
但是,如果我将其(my_submittion.py
)移动到另一个文件夹或将其用作我的提交(在codeforces/topcoder上),则相同的代码将不起作用。
为了实现这一点,我必须对代码(在my_submittion.py
)进行如下更改:
def Function1(a, b):
...
processed_number = Function1(x, y)
也就是说,我必须手动将Function1()从algorithms.py
复制到my_submittion.py
,然后我将能够在不同的文件夹中使用该脚本文件,或者将该文件用作我的提交文件(在topcoder或codeforces上)
我的问题是:-
如何跳过将特定函数从一个python文件手动复制到另一个python文件的过程?
python中是否有任何内置函数可以帮助我完成该任务,最好是:-
class_or_function_copier(path_to_file, function1[, function2[, function3[,...])
# path_to_file = algorithms (or d:\competitive_programming\algorithms.py)
# function1 = Function1
# function2 = Function2
'''
class_or_function_copier() automatically copies specified function(s) or class(es)
from a give source file to current file
'''
processed_number = Function1(x, y)
第一次运行后,它可能会自动创建对my_submittion.py
的更改,并使其:
def Function1(a, b):
...
processed_number = Function1(x, y)
=========================
可能与C/Cpp中的链接器类似,它可以从多个源文件生成最终可执行文件:-
cd "d:\competitive_programming\" ; if ($?) { gcc algorithms.c my_submittion.c -o submittion_file } ; if ($?) { .\submittion_file }
到目前为止,我已经编写了一个python脚本来消除手动处理部分,但如果有任何内置函数(如果有的话)这样做,它将非常有用
您只需将
algorithms.py
目录添加到您的路径,然后将您想要的任何函数从它导入到另一个脚本。在my_submittion.py
的顶部尝试以下操作:相关问题 更多 >
编程相关推荐