簡體   English   中英

Python 如果列表中的一項在字符串中,那么該項是什么?

[英]Python If an item from a list is in a string, what is the item?

所以假設我有一個字符串:

some_string = raw_input('string')

我有一個清單:

some_list = ['sacramento', 'los angeles', 'san diego', 'riverside']

有沒有辦法檢查 1)如果某個項目來自some_list是否在some_string並且 2)如果是這樣,該項目是什么?

我知道我們可以執行以下操作:

divided = (some_string.split(' '))
for word in divided:
    if any(x in some_string for x in some_list:
        print word

但這僅適用於列表中只有一個詞的項目,如果我為some_string寫了los angelessan diego ,我將無法通過上面的代碼找出字符串中的項目。

因此,如果您感到困惑,我要問的是:如果我有一個字符串和一個列表,並且列表中的一個項目在字符串中,那么該項目是什么? 我想知道一種適用於任何類型列表項的簡單方法。

您做了太多工作:不要拆分輸入字符串。

for target in some_list:
    if target in some_string:
        print(target)
        break  # IFF you want to find only one match

你可以這樣做:

if some_string in some_list:
    print(some_string)

您也可以使用set單個多個輸入進行此匹配

list(set(some_string).intersection(set(some_list)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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