我创建了Python脚本,在该脚本下,我想从中运行并调用另一个脚本,然后为被调用的脚本提供一个变量,在这种情况下,它将是文本文件中“行”的电子邮件地址。请问最简单的方法是什么?
现在的问题是,被调用的脚本不会将'line'变量作为参数。
import bob
import os
# file handle fh fh = open('mailout.txt') while True:
# read line
line = fh.readline()
line = line.replace("\r", "").replace("\n", "")
command = 'python3 bob.py ' + line
os.system(command)
# check if line is not a empty value
if not line:
break fh.close()
答案 0 :(得分:1)
作为@Zach的注释,您可以通过将line作为参数来调用它。否则,您可以使用argparse
进行操作。假设您有两个函数inner.py和outside.py。
inner.py
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-s', '--sentence')
args = parser.parse_args()
print(args.sentence)
outer.py
import os
f = open('email.txt')
line = f.readline()
line = line.replace("\r", "").replace("\n", "")
line = "\""+line+"\""
command = 'python inner.py -s' + line
os.system(command)
然后调用python outer.py
返回
只需一行即可尝试