接前一章制作12306网站查票系统,提取数据后数据列表里关于座位的字符很多为空,为了替换掉” 为’-‘,找到了个简单的方法.
lis= ['HKN', 'TNN', '07:00', '07:35', '00:35', '', '有', '有', 'x', '', '', '', '', 'x', '18', ''] str=['','x'] res=["-" if x in str else x for x in lis] print(res)
打印结果:
[‘HKN’, ‘TNN’, ’07:00′, ’07:35′, ’00:35′, ‘-‘, ‘有’, ‘有’, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ’18’, ‘-‘]
非常完美解决.之前用2层for循环也可以替换掉列表中的
for i in range(len(lis)): if lis[i] in str: lis[i]='-' print(lis)
打印结果:
[‘HKN’, ‘TNN’, ’07:00′, ’07:35′, ’00:35′, ‘-‘, ‘有’, ‘有’, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ‘-‘, ’18’, ‘-‘]