Skip to main content
 首页 » 编程设计

python之从另一个 py 调用 py 脚本打印值

2025年05月04日28qlqwjy

嗨,我是第一次写 python:

我有一个现有的 getprop.py 脚本,它加载属性文件并打印给定属性的值:

import sys 
import util 
 
if len(sys.argv) < 3: 
    print "Error! Usage is: getprop.py [propfile] [propname]" 
    sys.exit(1) 
 
props = util.loadprops(sys.argv[1]) 
if sys.argv[2] in props: 
    print props(sys.argv[2]); 

现在我需要在另一个 py 脚本中获取一个属性的值,所以我修改了上面的脚本,这样我就不会干扰它的功能,并且我可以在另一个脚本中使用它:

import sys 
import util 
 
def getpropvalue(propfile, propname): 
    props = util.loadprops(propfile) 
    if propname in props: 
    return props[propname] 
 
if len(sys.argv) < 3: 
    print "Error! Usage is: getprop.py [propfile] [propname]" 
    sys.exit(1) 
 
else: 
    print getpropvalue(sys.argv[1], sys.argv[2]); 

然后在其他脚本中我导入 getprop 并调用 getprop.getpropvalue(FILE_NAME, PROP_NAME) 之类的方法,并将属性的值打印在屏幕上。

为什么打印值?有没有更好的方法来解决这个问题?

请您参考如下方法:

有一种方法只有在直接调用脚本时才能运行脚本。将这些行添加到 getprop 代码的末尾:

if __name__ == "__main__": 
    main() 

这样,main 函数只会在您直接运行脚本(而不是导入)时被调用。这就是你要找的吗?
一些解释:每个正在运行的脚本都有一个 __name__ 变量,如果您从 IDE 或控制台(如 python script.py)运行脚本,该变量将设置为 "__main__"