[英]How to remove leading and trailing spaces from strings in a Python list
[英]Remove leading '0's from all strings in a list
l=['99','08','096']
for i in l:
if i.startswith('0'):
i.replace('0','')
print(l)
l=['99','08','096']
我只想从所有字符串中删除前导“0”:
l=['99','8','96']
您可以在列表理解中为此使用str.lstrip()
- 从每个字符串中删除所有前导'0'
。
>>> l = ['99', '08', '096']
>>> [x.lstrip('0') for x in l]
['99', '8', '96']
这有一个额外的好处,即不从字符串中删除'0'
实例,只从前面删除。
>>> l=['99', '08', '096', '0102']
>>> [x.lstrip('0') for x in l]
['99', '8', '96', '102']
如果我理解正确,您想从数组中删除以 0 开头的字符串,但从您显示的代码来看,您只是将字符串中的 0 替换为空。 i.replace('0','')
一种过滤方法是:
new_list = [el for el in l if not el.startswith('0')]
您可以通过使用 str.lstrip 使用列表理解来纠正您的字符串:
[e.lstrip('0') for e in l]
或者您可以使用 for 循环:
for i in range(len(l)):
if l[i].startswith('0'):
l[i] = l[i][1:]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.