我已经通读了其中的一些问题,但它们似乎都链接到专门用于python2.x的方法,而我正在python3.x中工作
我有一个python文件,叫它测试.py,它有许多包导入(例如,import numpy as np),但它也导入一些其他文件,我们称它们为subTest1.py和subTest2.py。每个子测试文件都有自己的导入(可能同时包含其他文件和包)。有没有一种自动获取运行路由脚本所需的所有包的列表的方法(测试.py)? 在
我知道pip freeze会显示安装的每个包,但这不是我要找的-可能安装了一个不需要运行测试.py脚本。在
与Python2.x相似的问题:
Return a list of imported Python modules used in a script?
Get all modules/packages used by a python project
似乎特定于python2.x的包:
蛇食
皮普雷克斯
如果pipreqs失败:
Traceback (most recent call last):
File "c:\anaconda36\envs\tensorflow\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\anaconda36\envs\tensorflow\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Anaconda36\envs\tensorflow\Scripts\pipreqs.exe\__main__.py", line 9, in <module>
File "c:\anaconda36\envs\tensorflow\lib\site-packages\pipreqs\pipreqs.py", line 396, in main
init(args)
File "c:\anaconda36\envs\tensorflow\lib\site-packages\pipreqs\pipreqs.py", line 341, in init
extra_ignore_dirs=extra_ignore_dirs)
File "c:\anaconda36\envs\tensorflow\lib\site-packages\pipreqs\pipreqs.py", line 91, in get_all_imports
raise exc
File "c:\anaconda36\envs\tensorflow\lib\site-packages\pipreqs\pipreqs.py", line 77, in get_all_imports
tree = ast.parse(contents)
File "c:\anaconda36\envs\tensorflow\lib\ast.py", line 35, in parse
return compile(source, filename, mode, PyCF_ONLY_AST)
File "<unknown>", line 49
print vsize
^
SyntaxError: Missing parentheses in call to 'print'
您可以使用
pipreqs
包。(Docs)要安装:
用法:
^{pr2}$它在脚本目录中生成一个
requirements.txt
文件,其中包含所使用的所有依赖项。在我在google上找到了这个脚本,它似乎在工作,我已经为python3更新了它,(只是print函数), 我已经测试过了,它列出了模块,但我认为它在模块下太深了,但值得一试。在
只需更改您要检查的任何文件名中的
^{pr2}$test.py
。 然后从终端运行脚本如果有帮助请告诉我。在
相关问题 更多 >
编程相关推荐