如何将另一列表推导式结果追加到已生成的incident_tagged列表?
解决列表推导式结果追加的问题
嘿,我来帮你搞定这个问题!你现在的代码里,第二行直接重新赋值了incident_tagged,导致第一个列表推导式的结果被完全覆盖了。要实现追加内容而不是覆盖,这里有几种实用的方案:
方案1:使用extend()方法
先创建初始列表,再用extend()把第二个列表推导式的内容加进去,这是最直观的追加方式:
# 先生成初始的标记列表 incident_tagged = [tokenize(df.iloc[i]['Title']) for i in tagged_list] # 追加未标记列表的处理结果 incident_tagged.extend([tokenize(df.iloc[j]['Title']) for j in untagged_list])
方案2:合并两个列表推导式(一次性生成)
如果不需要分开执行,也可以直接把两个列表推导式用+合并,一次性得到最终列表:
incident_tagged = [tokenize(df.iloc[i]['Title']) for i in tagged_list] + [tokenize(df.iloc[j]['Title']) for j in untagged_list]
方案3:使用+=操作符
这和extend()效果类似,语法更简洁:
incident_tagged = [tokenize(df.iloc[i]['Title']) for i in tagged_list] incident_tagged += [tokenize(df.iloc[j]['Title']) for j in untagged_list]
小提示
如果你的tagged_list和untagged_list可以合并成一个列表,还能进一步简化代码,在数据量较大时更高效:
# 先合并两个索引列表 combined_list = tagged_list + untagged_list # 一次性推导生成最终列表 incident_tagged = [tokenize(df.iloc[k]['Title']) for k in combined_list]
内容的提问来源于stack exchange,提问作者Shivam Agrawal
相关产品推荐
相关产品推荐

