将字符串转换为文本时添加行

2024-10-04 03:24:29 发布

您现在位置:Python中文网/ 问答频道 /正文

Python

我有1000多个文件,它们的名称以数字形式连续,比如IMAG0000.JPG,我将它们保存为列表、转换为字符串并保存为文本文件。我希望文本文件如下所示:

IMAG0000.JPG
IMAG0001.JPG
IMAG0002.JPG
IMAG0003.JPG
...

目前看来:

IMAG0000.JPGIMAG0001.JPGIMAG0002.JPGIMAG0003.JPG...

我不太清楚应该放在哪里\n以使其格式正确。这就是我目前所拥有的。。。你知道吗

import glob

newfiles=[]
filenames=glob.glob('*.JPG')
newfiles =''.join(filenames)

f=open('file.txt','w')
f.write(newfiles)

Tags: 文件字符串名称列表数字glob形式jpg
2条回答

试试这个:

newfiles = '\n'.join(filenames)

旁注:it's good practice to use the ^{} keyword处理文件对象时,因此代码:

f=open('file.txt','w')
f.write(newfiles)

将变成:

with open('file.txt','w') as f:
    f.write(newfiles)

这样您就不需要显式地执行f.close()来关闭文件。你知道吗

用空字符串''而不是'\n'来连接。你知道吗

newfiles = '\n'.join(filenames)
f = open('file.txt','w')
f.write(newfiles) # keep in mind to use f.close()

或更安全(即释放文件句柄):

with open("file.txt", w) as f:
    f.write('\n'.join(filenames))

或者不是把每件事都说清楚:

with open("file.txt", w) as f:
    for filename in filenames:
        f.write(filename + '\n')

相关问题 更多 >