作者a172545056 (Leon)
看板Python
标题[问题] Python新手 for回圈问题
时间Wed Jun 12 09:48:40 2019
各位前辈大家好,我是刚接触python不久的新人,目前练习到for回圈时有点卡关,想请
教一下各位前辈
我有三个List
ListA=[“Apple”,“food”,“Iron”]
ListB=[“x”,“z”,“on”]
ListC=[]
今天我想知道ListA中的字串是否有包含ListB的字串,有的话ListC.append(“YES”),没
有的话ListC.append(“No”),
我想得到的结果是ListC[“No”,“No”,“Yes”]
小弟目前的做法是
for a_str in ListA:
for b_str in ListB:
if b_str in a_str:
ListC.append(“Yes”)
continue
else:
ListC.append(“No”)
这样子ListC就增加了很多“No”,
跟我想要的结果不太一样,
想了很久不知道该怎麽做
还请各位前辈指点一下,谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 110.28.234.56 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1560304122.A.39F.html
1F:推 gt0112: ab两个for回圈就判断了九次啊 06/12 10:06
2F:推 XperiaZ6C: 不要用for b_str in ListB 06/12 10:06
3F:→ XperiaZ6C: 改if a_str in ListB: 06/12 10:07
4F:→ a172545056: 好的 谢谢前辈指点 06/12 10:28
5F:推 WayneHong: 推楼上,直接用in就好 06/12 12:51
6F:推 papple23g: ["Yes" if b_str in a_str else "No" for a_str,b_str 06/12 22:42
7F:→ papple23g: in zip(ListA,ListB)] 06/12 22:42