我有以下问题。我想有条件地形成一个列表a
。
可以说我有一个add_string
变量,如果是True
,那么
a = ["a","b","Added String","c"]
其他
a = ["a","b","c"]
最好的方法是什么?我可以按照以下方式进行
a = ["a","b","c"]
if add_string:
a.insert(2,"Added String")
但这并不理想,因为列表
a
将来可能会更改,而我将不得不在insert函数中更改索引。我也有一个条件-此添加的字符串应始终在“b”之后。另一种解决方案是在列表中搜索“b”,然后在其后插入,但这增加了复杂性并且很丑陋。理想情况下,我认为应该像
a = ["a","b",if add_string then "Added String","c"]
最佳答案
a = ["a","b"] + (["Added String"] if add_string else []) + ["c"]