[英]python:compare if string in list
我有個問題。
我有一個product.address
這樣的“ UK some city some road”
我想比較一下這個地址,如果它是以英國或美國或AS或GE開頭的
我將保存product.dstore_id = 2
,否則,保存product.dstore_id = 1
我的代碼是這樣的:
area = [UK,US,AS,GE]
for i in area:
if i in product.address:
product.dstore_id = 2
else:
product.dstore_id = 1
但是我發現這有一個大問題,它將比較所有的i
並保存錯誤的數字
所以我該怎么做才能達到目標。 請指導我一點謝謝
您可以使用any
。 如果product.address
中存在area
列表中的任何項目,則將返回True
。 然后,您不再需要for
循環。
if any(address.startswith(i) for i in area):
product.dstore_id = 2
else:
product.dstore_id = 1
例如
area = ['UK','US','AS','GE']
address = 'UK some city some road'
>>> any(addres.startswith(i) for i in area)
True
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.