Python - 从字符串列表中删除前导 0
有时,在使用Python时,我们可能会遇到一个问题,即我们需要在其中执行处理然后将数据向前传递的数据。一种处理方法是删除可能在数据传输时附加到字符串的杂散 0。让我们讨论可以执行此任务的某些方式。
方法 #1:使用lstrip()
+ 列表理解
这是可以执行此任务的唯一班轮之一。在此,我们使用 lstrip 去除前导 0,并将逻辑扩展到列表是使用列表推导完成的。
# Python3 code to demonstrate
# Remove leading 0 from Strings List
# using lstrip() + list comprehension
# Initializing list
test_list = ['012', '03', '044', '09']
# printing original list
print("The original list is : " + str(test_list))
# Remove leading 0 from Strings List
# using lstrip() + list comprehension
res = [ele.lstrip('0') for ele in test_list]
# printing result
print ("The string list after leading 0 removal : " + str(res))
输出 :
The original list is : ['012', '03', '044', '09']
The string list after leading 0 removal : ['12', '3', '44', '9']
方法#2:使用startswith()
+ 循环+ 列表切片
这是可以执行此任务的方式之一。在此,我们使用 startswith() 检查初始 0,然后使用列表切片来重新制作不包括 0 的字符串。
# Python3 code to demonstrate
# Remove leading 0 from Strings List
# using startswith() + loop + list slicing
# Initializing list
test_list = ['012', '03', '044', '09']
# printing original list
print("The original list is : " + str(test_list))
# Remove leading 0 from Strings List
# using startswith() + loop + list slicing
for idx in range(len(test_list)):
if test_list[idx].startswith('0'):
test_list[idx] = test_list[idx][1:]
# printing result
print ("The string list after leading 0 removal : " + str(test_list))
输出 :
The original list is : ['012', '03', '044', '09']
The string list after leading 0 removal : ['12', '3', '44', '9']