[英]Compare two string lists with each other Python
我想比較兩個字符串列表,找到公共字符串並將公共字符串存儲在新列表中。
例如:
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
在[ '15, -28., -30.\\n']
my_list2
[ '15, -28., -30.\\n']
包含my_list1
中的'15'
,所以我想要一個新列表來保存所有常見字符串
您可以使用str.startswith
,它可以將項目的元組作為參數。 左剝離第一個列表中的每個項目,並檢查該項目是否以第二個列表中的任何字符串開頭 :
t = tuple(my_list2)
lst = [x for x in my_list1 if x.lstrip().startswith(t)]
print lst
# [' 15, -28., -30.\n']
my_list1_new = [i.strip().split(",")[0] for i in my_list1 ]
for i in my_list2:
if i in my_list1_new:
print(my_list1[my_list1_new.index(i)])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.