str首字母大写,其余转换小写求助
大家好,我有一个1.txt内容部分例子如下:EL_E
ARBA
HQQS
BURI
UY_E
$UJI
我想吧1.txt中的每个词首字母大写,其余都小写转换,结果实例为:
El_e
Arba
Hqqs
Buri
Uy_e
$uji
可把我难住了,用了一下readlines(),然而不能用split()
用capitalize()没数据了居然,
用read()只能转换一行
希望您的帮助,谢谢。 readlines(),就读到列表了,不需要split
只要对列表操作就可以了 本帖最后由 isdkz 于 2022-3-11 07:48 编辑
result = []
with open('1.txt', 'r+', encoding = 'utf-8') as f:
for line in f:
result.append(line.capitalize())
f.seek(0)
f.writelines(result) isdkz 发表于 2022-3-11 07:16
您好,想请教一个问题:
我写的代码如下:
a = open(r'C:\Users\amgalang\Desktop\1.txt',encoding = 'utf-8')
b = a.readlines()
for line in b:
f = line.capitalize()
print(f)
为什么结果只是一行内容呢,谢谢 Amgalang 发表于 2022-3-11 07:31
您好,想请教一个问题:
我写的代码如下:
缩进问题,你那个print只在循环外,所以你懂得 本帖最后由 isdkz 于 2022-3-11 07:57 编辑
Amgalang 发表于 2022-3-11 07:31
您好,想请教一个问题:
我写的代码如下:
真如楼上大佬所说,不是只转换了一行,而是你只打印了最后一个 f,
要么你把 print 放在 for 循环里面,要么就是把所有的结果拼起来赋值给 f
故对你的代码修改如下:
a = open(r'C:\Users\amgalang\Desktop\1.txt',encoding = 'utf-8')
b = a.readlines()
f = ''
for line in b:
f += line.capitalize()
print(f) isdkz 发表于 2022-3-11 07:16
学会了,谢谢您,祝您拥有美好的一天 wp231957 发表于 2022-3-11 07:39
缩进问题,你那个print只在循环外,所以你懂得
难怪,学会了,谢谢您,祝您拥有美好的一天
页:
[1]