2016-08-03 15 views

Trả lời

14

Bạn có thể sử dụng danh sách hiểu:

strings = ["aString", "yetAnotherString", "evenAnotherOne"] 

["String" in i for i in strings] 
#Out[76]: [True, True, False] 

Hoặc sử dụng re mô-đun:

import re 

[bool(re.search("String", i)) for i in strings] 
#Out[77]: [True, True, False] 

Hoặc với Pandas (user R có thể quan tâm đến thư viện này, sử dụng một dataframe "tương tự "cấu trúc):

import pandas as pd 

pd.Series(strings).str.contains('String').tolist() 
#Out[78]: [True, True, False] 
+0

Các kỳ quan của danh sách hiểu! – OdeToMyFiddle

+0

Tôi lấy nó là giải pháp cũ sẽ không hoạt động đối với '" String $ "' phải không? (tức là nó chỉ phù hợp với chuỗi con) – MichaelChirico

+0

đúng, bạn sẽ cần sử dụng mô-đun regex trong trường hợp đó. –

2

Một một dòng tương đương là có thể, sử dụng re:

import re 

strings = ['aString', 'yetAnotherString', 'evenAnotherOne'] 
[re.search('String', x) for x in strings] 

này sẽ không cung cấp cho bạn các giá trị boolean, nhưng kết quả truthy mà chỉ là tốt.

2

Nếu bạn không cần một biểu hiện thường xuyên, nhưng chỉ là thử nghiệm cho sự tồn tại của một susbtring trong một chuỗi:

["String" in x for x in strings] 
Các vấn đề liên quan