我有两个python文件:
test.py
def k():
print ("I am a test")
print ("see! I do nothing productive.")
if __name__ == "__main__":
k()
test2.py
但是当我运行test2.py时,它会显示错误:
Traceback (most recent call last):
File "C:\Python32\test2.py", line 3, in <module>
test.k()
AttributeError: 'module' object has no attribute 'k'
正如评论中所建议的,您正在跟踪一个名为“test”的内置模块。如果您重命名“测试.py“对于任何其他名称(即不是内置模块),导入它,并将两个文件驻留在同一个文件夹中,它将正常运行。在
例如:
温度_测试.py
温度测试2.py
^{pr2}$运行temp_test2.py将生成以下输出:
关于您的注释,您使用
subprocess.call()
的尝试失败了,因为您需要添加shell=True
参数,以便shell可以分析和解释命令,或者您需要将参数拆分为一个列表并传递它:或者:
我不知道你的
os.system()
呼叫为什么失败。这对我2.7版有效:TL;DR
最后一点:您的问题内容涉及的主题与您在评论中列出的尝试解决方法不同(模块导入与子进程启动)。这是两个完全不同的东西,所以在你继续写你正在写的任何脚本之前,一定要仔细阅读一下,这样你就可以使用正确的脚本来完成你的任务了。在
相关问题 更多 >
编程相关推荐