【发布时间】:2018-02-05 01:14:09
【问题描述】:
我有一个这样的文本文件:
abc123bvjhfvb:dlnvsl|smth
fsbffsb378hbdcbs:v5v3v|smth
sdcg87wgn8:vy5b4|smth
sin87s88vnus:y54545v4v|smth
rc8n782c:efghrn|smth
如您所见,从第二行开始有一个空格。
如何将这些行转换为这些行?
abc123bvjhfvb:dlnvsl
fsbffsb378hbdcbs:v5v3v
sdcg87wgn8:vy5b4
sin87s88vnus:y54545v4v
rc8n782c:efghrn
我尝试过这样的事情:
lines = open("file.txt").readlines()
for x in lines:
x.strip(" ").split("|")
print (x[0])
但它只打印 abc123 的“a”,然后为每一行打印一系列空格。我认为 [0] 会打印第一个字母,而不是在“|”之前打印拆分的第一部分(例如 abc123bvjhfvb:dlnvsl)
【问题讨论】:
-
字符串是不可变的,你需要将
x.strip(" ").split("|")分配给某个变量。 -
打印 x.replace(" | smth","")
-
x[0] 指的是字符串 x 中的第一个字符,x 是整行。 split() 返回一个结果,你没有分配给任何东西。您需要将结果分配给 y,然后 y[0] 将引用该行的数组中的第一个元素。
标签: python python-3.x list split strip