Python:如何将 .txt 文件的第一列大写。

标签 python string text multiple-columns

我有一个 .csv 格式的 .txt 文件。我正在考虑将第一列中的文本大写的最佳方式。

.capitalize() 是一个字符串方法,所以我考虑了以下内容;我需要打开文件,将数据转换为字符串列表,将所需的单词大写,最后将数据写回文件。

为了实现这一目标,我执行了以下操作:

newGuestList = []
with open("guestList.txt","r+") as guestFile :
guestList = csv.reader(guestFile)
for guest in guestList :
    for guestInfo in guest :
        capitalisedName = guestInfo.capitalize()
        newGuestList.append(capitalisedName)

这给出了输出:
[‘彼得’、‘35’、‘西类牙’、‘卡罗琳’、‘37’、‘法国’、‘克莱尔’、‘32’、‘瑞典’]

问题:

首先;为了将这个新列表写回文件,我需要将其转换为字符串。我可以使用 .join 方法来实现这一点。但是,如何在每三个单词(国家/地区)后引入换行符 \n ,以便每个 guest 在文本文件中都有自己的行?

其次;这种嵌套 for loops 等的方法看起来非常复杂,有没有更干净的方法?

我的.txt文件: 彼得,35,西类牙\n 卡罗琳,37,法国\n 克莱尔,32 岁,瑞典\n

最佳答案

您不需要分割行,因为第一个单词的第一个字符是该行的第一个字符:

with open("lst.txt","r") as guestFile :
    lines=guestFile.readlines()
    newlines=[line.capitalize() for line in lines]
with open("lst.txt","w") as guestFile :
    guestFile.writelines(newlines)   

关于Python:如何将 .txt 文件的第一列大写。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34710383/

相关文章:

python - 我做了一个程序来检查文件中是否有一个词,需要一些建议

r - 如何识别不合逻辑的字符串/句子

Python Tkinter : Text widget unbind mouse wheel

CSS 文本布局/格式问题

python - 使用 Python 从文本文件中提取数据

python - 在 Python 中使用 Pandas 查找每日最大小时数

python - 如何在 Odoo 12 中直接访问看板 View 模板中的 python 方法?

c# - 使用 HTML 解析器时如何加载网页上的所有项目?

C++ 字符串操作对我来说没有意义

C# 排序 Arraylist 字符串按字母顺序和长度