我在列表中有字符串“80010”、“80030”、“80050”,如
test = ['80010','80030','80050']
如何删除最后一个字符(在本例中是每个字符串的最后一个数字,即0),这样我就可以得到另一个列表,其中只包含每个字符串的前四个数字/字符?所以最后会有这样的结果
newtest = ['8001', '8003', '8005']
我对Python很陌生,但我尝试过if-else语句、追加、使用索引[:-1]等,但除非最终删除所有其他零,否则一切都不起作用。非常感谢!
Tags:
新测试将包含结果
["8001","8003","8005"]
。[x[:-1] for x in test]
通过在test
中的每个项上循环并将修改后的版本放入newtest
中,创建一个新列表(使用列表理解)。x[:-1]
意味着将字符串值x中的所有内容都取到最后一个元素,但不包括最后一个元素。只是为了展示一个与理解稍有不同的解决方案,考虑到其他答案已经解释了切片,我只需要介绍一下方法。
有地图功能。
有关此解决方案的详细信息,请阅读我在另一个类似问题中所做的简要解释。
Convert a list into a sequence of string triples
你离这儿不远。使用切片符号[:-1]是正确的方法。把它和列表理解结合起来:
somestring[:-1]
提供从位置0处的字符(包含)到最后一个字符(排除)的所有内容。相关问题 更多 >
编程相关推荐