我需要通过服务在后台执行脚本。
该服务使用Popen启动脚本。
p = Popen('/path/to/script/script.py', shell=True)
当我在for循环中包含文件写入时,为什么以下脚本不起作用?
#!/usr/bin/python
import os
import time
def run():
fd = open('/home/dilleyjrr/testOutput.txt', 'w')
fd.write('Start:\n')
fd.flush()
for x in (1,2,3,4,5):
fd.write(x + '\n')
fd.flush()
time.sleep(1)
fd.write('Done!!!!\n')
fd.flush()
fd.close()
if __name__ == '__main__':
run()
答案 0 :(得分:1)
这是你的错误:
for x in (1,2,3,4,5):
fd.write(x + '\n')
您不能将int与字符串相加。改为使用(例如)
for x in (1,2,3,4,5):
fd.write('%s\n' % x)
答案 1 :(得分:0)
你得到什么错误?没有错误就很难看到问题。无论如何,该文件是在其他地方打开的吗?