簡體   English   中英

相互比較兩個字符串列表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM