我想''用'.'list替換空實例compare:compare = ['?sblu?', 'm?n', '', 'bl?y?t', '', '???s']
compare = [w.replace('', '.') for w in compare]輸出: ['.?.s.b.l.u.?.', '.m.?.n.', '.', '.b.l.?.y.?.t.', '.', '.?.?.?.s.]'但是我想要: ['?sblu?', 'm?n', '.', 'bl?y?t', '.', '???s']
3 回答

開心每一天1111
TA貢獻1836條經(jīng)驗 獲得超13個贊
您正在調(diào)用replace
列表中的各個元素。您可以通過過濾列表來達到所需的效果:
compare = ['?sblu?', 'm?n', '', 'bl?y?t', '', '???s'] compare = ["." if x == "" else x for x in compare]

紅糖糍粑
TA貢獻1815條經(jīng)驗 獲得超6個贊
您真正的意思是,compare = ['.' if w == '' else w for w in compare]它不是replace替換代碼中的每個零長度子串。
但是,您實際上并不需要列表理解,因為它也可以就位。
for i, x in enumerate(compare):
if x == '':
compare[i] = '.'
添加回答
舉報
0/150
提交
取消