Python删除textfi每行的一部分

2024-05-02 10:27:11 发布

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

我有这样一个文本文件:

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]应该打印第一个字母,而不是在“|”之前打印split的第一部分(例如abc123)bvjhfvb:dlnvsl)你知道吗


Tags: splitlines空格abc123smthabc123bvjhfvbfsbffsb378hbdcbssdcg87wgn8
2条回答

在分割位的末尾需要[0],否则就是字符串索引,而不是分割部分的索引

您还可以为strip和split位分配一个变量fur,然后打印它,即y=。。。打印(y)

问题是stripsplit不突变x

代码需要使用返回值:

for x in lines:
    x = x.strip(" ").split("|")
    print (x[0])

相关问题 更多 >