Python 如何从列表中的每个元素中删除字符
我想从列表中的每个元素(当前为int)中删除前两个字符。这就是我所拥有的:Python 如何从列表中的每个元素中删除字符,python,list,Python,List,我想从列表中的每个元素(当前为int)中删除前两个字符。这就是我所拥有的: lst = [2011,2012,3013] 我想要这个 lst= [11,12,13] 但是,我不希望有一个解决方案将20或30替换为“” 给定源=[2011,-2012,-3013]: 结果为整数,无符号: 结果为整数,已签名 结果为字符串,无符号(保留前导零): 结果为带符号的字符串(保留前导零): 模: 只需将每个元素模化为100 list= [2011,2012,3013] for i in range(l
lst = [2011,2012,3013]
我想要这个
lst= [11,12,13]
但是,我不希望有一个解决方案将20或30替换为“” 给定
源=[2011,-2012,-3013]
:
结果为整数,无符号:
结果为整数,已签名
结果为字符串,无符号(保留前导零):
结果为带符号的字符串(保留前导零):
模:
只需将每个元素模化为100
list= [2011,2012,3013]
for i in range(len(list)):
list[i] %= 100
您可以使用:
list = [abs(number)%100 for number in list]
而且列出名单是一种不好的做法。使用另一个名称。您可以按100使用模块,如:
my_list= [2011,2012,3013]
expected_list = [i%100 for i in my_list]
如果我的列表中有负数
:
expected_list=[abs(i)%100 for i in my_list]
或使用字符串切片:
expected_list = [int(str(i)[2:]) for i in my_list] #[2:],because you want to remove first two numbers
请尽量避免使用保留关键字作为变量名,因为您使用了
list
作为变量名。不要列出list
您可以使用x=[abs(i)%100 for i in x]
我的答案是否正确,或者您是否正试图从每个值中删除两个前导数字?在这种情况下,2位或更少数字的数字怎么办?请不要列出列表
,它会覆盖一个内置项请不要列出列表
它会覆盖一个内置项。有史以来最好的建议:)
list = [abs(number)%100 for number in list]
my_list= [2011,2012,3013]
expected_list = [i%100 for i in my_list]
expected_list=[abs(i)%100 for i in my_list]
expected_list = [int(str(i)[2:]) for i in my_list] #[2:],because you want to remove first two numbers