楼主:
TuCH (谬客)
2019-06-12 10:08:56※ 引述《a172545056 (Leon)》之铭言:
: 各位前辈大家好,我是刚接触python不久的新人,目前练习到for循环时有点卡关,想请
: 教一下各位前辈
: 我有三个List
: ListA=[“Apple”,“food”,“Iron”]
: ListB=[“x”,“z”,“on”]
: ListC=[]
: 今天我想知道ListA中的字串是否有包含ListB的字串,有的话ListC.append(“YES”),没
: 有的话ListC.append(“No”),
: 我想得到的结果是ListC[“No”,“No”,“Yes”]
: 小弟目前的做法是
稍微修改一下
if len(ListA) != len(ListB):
assert 'ListA 长度跟 ListB 长度不一致'
for a_index, a_str in enumerate(ListA):
b_str = ListB[a_index]
if b_str in a_str:
ListC.append("Yes")
else:
ListC.append("No")
: 这样子ListC就增加了很多“No”,
: 跟我想要的结果不太一样,
: 想了很久不知道该怎么做
: 还请各位前辈指点一下,谢谢!
酷炫一点的一行解决
ListD = ['Yes' if ListB[a_index] in a_str else 'No' for a_index,a_str in enumerate(ListA)]