繁体   English   中英

当shebang不正确时,如何自动检查Python脚本的正确版本?

[英]How to check a Python script's the correct version automatically while the shebang is not accurate?

例如,我发现download_model_binary.py的shebang错误,因为它包含Python 2库函数urllib.urlretrieve

我尝试使用两个python解释器执行该文件,并在脚本中查看其返回值,但这会导致副作用。

注意:我在问如何检测现有的Python 2脚本(例如download_model_binary.py的正确版本,而该脚本具有错误的shebang,而不是如何重写该脚本以使其兼容。

您可以执行以下操作:

import sys

if sys.version_info.major < 3:
     from urllib import urlretrieve
else:
     from urllib.request import urlretrieve

以后使用:

urlretrieve(frontmatter['caffemodel_url'], model_filename, reporthook)

如果需要,请经常考虑使用Python Future 它为此类问题提供了一个很好的解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM