Tim*_*ong 5 python python-import filereference
情况:我们知道下面将检查脚本是否已被直接调用.
if __name__ == '__main__':
print "Called directly"
else:
print "Imported by other python files"
Run Code Online (Sandbox Code Playgroud)
问题:该else子句只是一个通用子句,只要脚本没有直接调用就会运行.
问题:如果没有直接调用,有没有办法获取导入的文件?
附加信息:下面是我想象代码的示例,只是我不知道要放什么<something>.
if __name__ == '__main__':
print "Called directly"
elif <something> == "fileA.py":
print "Called from fileA.py"
elif <something> == "fileB.py":
print "Called from fileB.py"
else:
print "Called from other files"
Run Code Online (Sandbox Code Playgroud)
尝试这个:-
import sys
print sys.modules['__main__'].__file__
Run Code Online (Sandbox Code Playgroud)
请参阅更好的答案:- How to get filename of the __main__ module in Python?
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |