Python rstrip()(用于制表符)未按预期工作

2024-06-08 22:40:28 发布

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

我正在尝试rstrip()函数,但它没有按预期工作。 例如,如果我运行以下命令:

lines = ['tra\tla\tla\t\t\t\n', 'tri\tli\tli\t\t\t\n', 'tro\tlo\tlo\t\t\t\n']

for line in lines:
    line.rstrip('\t')

print lines

它回来了

^{pr2}$

但我想让它回来:

['tra\tla\tla\n', 'tri\tli\tli\n', 'tro\tlo\tlo\n']

这里有什么问题?在


Tags: 函数in命令forlinetrilinesprint
1条回答
网友
1楼 · 发布于 2024-06-08 22:40:28

该函数返回new,stripped字符串,但您将放弃该返回值。在

使用列表理解代替整个lines列表;您还需要忽略末尾的新行;.rstrip()方法不会为您忽略这些行。在

lines = [line[:-1].rstrip('\t') + '\n' for line in lines]

演示:

^{pr2}$

相关问题 更多 >