【发布时间】:2017-07-09 14:54:16
【问题描述】:
我有一个清单 -
A=["hi how are you","have good day","where are you going ","do you like the place"]
和另一个列表 -
B=["how","good","where","going","like","place"]
列表 B 包含列表 A 中存在的一些单词。 我想用列表 B 中的索引替换列表 B 中出现在列表 A 中的所有单词。如果单词不存在,则将其替换为 0
所以替换后的列表A应该是
["0 1 0 0","0 2 0","3 0 0 4","0 0 5 0 6"]
我尝试使用 for 循环,但它不是有效的,因为我的列表长度 > 10000。我也尝试使用 map 函数,但我没有成功
这是我的尝试:
for item in list_A:
words=sorted(item.split(), key=len,reverse=True)
for w in word:
if w.strip() in list_B:
item=item.replace(w,str(list_B.index(w.strip())))
else:
item=item.replace(w,0)
【问题讨论】:
-
你自己尝试过吗?
-
这听起来很像家庭作业。如果是这样,最好在您的帖子中的某处提及这一点。目前,看起来您只是在要求人们为您完成工作。相关 - How do I ask and answer homework questions?
-
我只能使用 for 循环。我也尝试使用地图功能,但没有成功。不,这不是家庭作业,这是我正在实施的程序所需要的方法
-
完成了,您可以发布您的尝试吗?
-
@cgte for loop 解决方案已发布