将文件中的所有文本转换为小写。

12 浏览
0 Comments

将文件中的所有文本转换为小写。

我正在尝试将txt文件中的所有文本转换为小写字母,我该如何做?这是我目前的代码,并且我查看了一些stackoverflow上的问题,但我无法完全弄清楚,如果有人能够链接给我正确的文章或告诉我我的代码有什么问题,我将非常感激。

0
0 Comments

问题的出现的原因是代码中打开文件的方式不正确,以及在列表推导式中使用了错误的变量名。解决方法是修改代码中打开文件的方式,并使用正确的变量名。

具体来说,代码中使用了'r'来打开文件,但是应该使用'r+'来同时进行读取和写入。此外,在列表推导式中使用了lines这个错误的变量名,应该使用file

修复后的代码如下所示:

from itertools import chain
from glob import glob
with open('FortInventory.txt', 'r+') as file:
     lines = [line.lower() for line in file]
     file.seek(0)
     file.writelines(lines)

另外,某些情况下可以使用writelines(lines)来写入文件,而不需要使用sorted来排序。还有人指出,truncate在这里是不必要的,因为我们会完全覆盖文件的内容。

最后,有人问为什么使用sorted,另一个人回答说sorted在这里有一个很好的效果。

0