python文件间传递参数怎样实现
在Python中,可使用命令行参数、环境变量、文件等方式在区分的Python文件之间传递参数。
1. 命令行参数:可使用sys.argv
获得命令行参数。sys.argv[0]
表示当前Python文件路径,sys.argv[1:]
表示传递的额外参数。示例以下:python
# file1.py
import sys
def main():
print(sys.argv[0]) # 当前文件路径
print(sys.argv[1]) # 传递的参数
if __name__ == "__main__":
main()
履行命令:python file1.py arg1
,输出:
file1.py
arg1
2. 环境变量:可使用os.environ
获得环境变量。示例以下:python
# file1.py
import os
def main():
print(os.environ.get('MY_ENV_VAR')) # 获得环境变量值
if __name__ == "__main__":
main()
履行命令(在Windows下):set MY_ENV_VAR=hello
,然后履行python file1.py
,输出:
hello
3. 文件:可使用文件来传递参数,例如将参数写入文件,然后读取。示例以下:python
# file1.py
def write_params(path, params):
with open(path, 'w') as f:
for param in params:
f.write(param + '
')
def read_params(path):
with open(path, 'r') as f:
params = f.readlines()
return [param.strip() for param in params]
def main():
params = ['param1', 'param2', 'param3']
write_params('params.txt', params)
read_params('params.txt')
if __name__ == "__main__":
main()
履行python file1.py
,然后履行python file2.py
(在另外一个Python文件中),可以读取params.txt
文件中的参数。
以上是一些常见的方式,在区分的场景下可以选择合适的方式来传递参数。
TOP