我有两个脚本要组合成一个脚本,但是我需要等待最后一个脚本,直到第一个脚本完全执行为止。
脚本1正在执行某个API调用,该API提供了一个.txt读数,我需要将其转换为CSV。 脚本2将该数据转换为CSV。
我可以分别给他们打电话,但我不想,我只想用一个脚本就可以。
代码1:这需要首先运行。
with open('IDTag.txt') as file:
**Code Removed**
代码2:这需要等到代码1完成100%之后再运行。
with open('File1.txt', 'r') as infile, open('File1.csv', 'w') as outfile:
stripped = (line.strip() for line in infile)
lines = (line.split(",") for line in stripped if line)
writer = csv.writer(outfile)
writer.writerows(lines)
这两个脚本都可以工作,因为我需要它们彼此独立,但是再次,我希望它们都生活在同一个文件中。 我试图寻找一个直接的答案,但是还没有找到任何可行的方法。我仍在学习Python 3,因此很可能缺少某些东西。有想法吗?
答案 0 :(得分:1)
@Reedinationer,I'll do you one better:
这是连接python脚本并使用python将结果保存到新python文件中的方式。
def read(path):
f = open(path, "r")
content = f.read()
f.close()
return content
f3 = open("merged.py", "w")
f3.write("{}\n{}".format(read("1.py"), read("2.py")))
f3.close()
祝你好运。
答案 1 :(得分:0)
您应该能够将它们一个接一个放置,只要小心避免将一个嵌套在另一个中即可。也许您可以在第二个块中使用两个单独的WhenAll
语句?我之前从未见过像这样的语法,所以不确定它是否有效(也许是这样)。我会尝试:
with
尽管我不确定它们之间的相关性,因为您的第二个块没有使用with open('IDTag.txt') as file:
**Code Removed**
with open('File1.txt', 'r') as infile
with open('File1.csv', 'w') as outfile:
stripped = (line.strip() for line in infile)
lines = (line.split(",") for line in stripped if line)
writer = csv.writer(outfile)
writer.writerows(lines)
作为输入。