我想比较两个字符串列表,找到公共(public)字符串并将公共(public)字符串存储在新列表中。
例如:
my_list1=[' 4, -40., -12.\n',
' 5, -40., -15.\n',
' 6, -40., -18.\n',
' 7, -40., -21.\n',
' 8, -40., -24.\n',
' 9, -40., -27.\n',
' 14, -30., -30.\n',
' 15, -28., -30.\n']
my_list2=['49',
'50',
'51',
'10',
'53',
'54',
'55',
'56',
'57',
'58',
'59',
'60',
'6162',
'15',
'64',
'65',
'66']
我想要做的是将 my_list2 中的每个字符串与 my_list1 中的字符串的开头进行比较。
例如,my_list1
包含 my_list2
中的 '15'
,位于 [ '15, -28., -30。\n ']
所以我想要一个新列表来保存所有常见字符串
最佳答案
您可以使用str.startswith
它可以将项目元组作为参数。 左剥离第一个列表中的每个项目,并检查该项目是否以第二个列表中的任何字符串开头:
t = tuple(my_list2)
lst = [x for x in my_list1 if x.lstrip().startswith(t)]
print lst
# [' 15, -28., -30.\n']
关于python - Python 比较两个字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44904633/