修剪列表中的最后一个字符

时间:2019-01-09 16:14:22

标签: python python-3.x

我正在尝试从一长串字符中切断最后一个字符。我这样创建清单:

r = re.findall(re.escape(start) + "(.+?)" + re.escape(end), html_page, re.DOTALL)

正则表达式和其他所有东西都可以正常工作,只是最后一个字符是逗号,而我想删除该逗号。到目前为止,这是我尝试过的:

r = r[:-1]
del r[-1]

在两种情况下,列表都被完全删除,而不仅仅是最后一个字符。

3 个答案:

答案 0 :(得分:2)

这是因为您的列表包含一个元素,这是一个巨大的字符串

如果您确实希望像一个巨型字符串一样,可以执行r=[r[0][:-1]],该操作将删除逗号,但保留其余的长字符串。

答案 1 :(得分:1)

您可以执行以下操作:

[r[0][:-1]]

保持简单! :)

答案 2 :(得分:0)

只需使用rstrip,如果最后一个字符不是逗号,则将字符串保留下来。以r[0]开头,以提取findall返回的列表中的单个字符串:

r = r[0].rstrip(',')

或更普遍地将rstrip应用于列表中的每个字符串。

r = [x.rstrip(',') for x in r]