[英]Append FOR Loop output to List PYTHON
我只是想将 for 循环的输出写入 txt 文件
for filename in glob.glob('/home/*.txt'):
file_metadata = { 'name': 'files.txt', 'mimeType': '*/*' }
media = MediaFileUpload(filename, mimetype='*/*', resumable=True)
file = drive_service.files().create(body=file_metadata, media_body=media, fields='id').execute()
links = []
links.append(file.get('id'))
with open("ids.txt", "w") as file:
for e in links:
file.write(str(e))
file.close()
您需要在单独的循环中写入文件,而不是嵌套循环,或者只是完全删除嵌套循环。 您还应该with open()
删除close()
,它会在写入文件完成后处理关闭
with open("ids.txt", "w") as f:
for filename in glob.glob('/home/*.txt'):
file_metadata = { 'name': 'files.txt', 'mimeType': '*/*' }
media = MediaFileUpload(filename, mimetype='*/*', resumable=True)
file = drive_service.files().create(body=file_metadata, media_body=media, fields='id').execute()
f.write(f'{file.get("id")}\n')
# or if your Python version is older than 3.6
f.write(str(file.get("id")) + '\n')
您不应将同一个变量file
用于两个不同的目的。 你不应该close()
你with open() as ..
任何东西with open() as ..
:
links = []
for filename in glob.glob('/home/*.txt'):
file_metadata = { 'name': 'files.txt', 'mimeType': '*/*' }
media = MediaFileUpload(filename, mimetype='*/*', resumable=True)
file = drive_service.files().create(body=file_metadata, media_body=media, fields='id').execute()
links.append(file.get('id'))
with open("ids.txt", "w") as fout:
fout.write('\n'.join(links))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.