如果你问如何启动你的 python 脚本并让它在不同的位置开始执行,那么你将不得不启动脚本并提供一些关于你想要它做什么的信息。最常见的方法是添加对命令行参数的支持。
import sys
if __name__ == '__main__':
for arg in sys.argv:
print arg
如果您要从命令行单独执行上述脚本,它不会做任何事情,但是如果您使用一些额外的参数启动它,例如
./launch.py my_argument another_argument and_so_on
您将看到脚本可以通过 sys.argv 列表访问额外的启动参数。使用它,您可以在启动时检查任何传递的参数,然后在所需位置开始执行脚本。
您的脚本的一个示例可能如下
import sys
class Name:
def __init__(self):
self.name = 'John'
self.address = 'Place'
self.age = '100'
def printName(self):
print self.name
def printAddress(self):
print self.address
def printAge(self):
print self.age
if __name__ == '__main__':
Person = Name()
launchOptions = sys.argv[1:]
if not launchOptions or 'name' in launchOptions:
Person.printName()
if not launchOptions or 'address' in launchOptions:
Person.printAddress()
if not launchOptions or 'age' in launchOptions:
Person.printAge()
sys.argv[1:] 的范围是因为 sys.argv 中的第一个条目将是启动脚本的路径。
因此,您可以启动此示例并获得以下结果
./launch
John
Place
100
./launch age
100
./launch address
Place
./launch name
John
现在这只是一个非常基本的例子。如果您决定朝这个方向走得更远,阅读pythons getopt 模块可能对您有用。它是命令行选项的解析器。
希望我正确理解了这个问题。