Re: [問題] Python新手 for迴圈問題
※ 引述《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)]
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.38.2.203 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1560305338.A.48A.html
→
06/12 10:29,
6年前
, 1F
06/12 10:29, 1F
→
06/12 15:15,
6年前
, 2F
06/12 15:15, 2F
我發現我誤會你的意思了 正確的code應該是
for a_str in ListA:
for b_str in ListB:
if b_str in a_str:
ListC.append("Yes")
break
else:
ListC.append("No")
※ 編輯: TuCH (114.38.2.203 臺灣), 06/12/2019 15:36:31
推
06/26 01:49,
6年前
, 3F
06/26 01:49, 3F
→
06/26 01:49,
6年前
, 4F
06/26 01:49, 4F
→
06/26 01:49,
6年前
, 5F
06/26 01:49, 5F
→
06/26 01:49,
6年前
, 6F
06/26 01:49, 6F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 5 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章