我编写了一个python脚本来运行vb.net项目可执行文件。我遇到的问题是,当我阅读这些行,然后使用for循环将单独的行(IP)用作应用程序的参数时,这是行不通的。但是,当我使用其他字符串时,它确实可以工作。因此,它不会从ipaddress.txt中读取IP,但是如果输入manual作为参数而不是'line',它将获取IP。
import subprocess
f = open('ipaddress.txt')
lines = f.readlines()
f.close()
for line in lines:
subprocess.Popen(['C:\\Users\\YYYYY\\OneDrive - XXXX
\\Visual-Studio-Projects\\Map_Tester\\bin\\Map200_Tester.exe', 'line'])
感谢任何详细原因。谢谢。
答案 0 :(得分:1)
在您的代码中,'line'
用引号引起来,表示其为字符串。但是您希望将line
读作一个变量,因此只需在for循环中删除line
中的引号,即可完成您想要的操作:遍历每个for line in lines:
import subprocess
f = open('ipaddress.txt')
lines = f.readlines()
f.close()
for line in lines:
subprocess.Popen(['C:\\Users\\YYYYY\\OneDrive - XXXX
\\Visual-Studio-Projects\\Map_Tester\\bin\\Map200_Tester.exe'], line[:-1])
此编辑将从您的line
变量中删除所有换行符。