Python如何将多个数组按列打印 解决数组列表遍历输出报错问题
报错原因与修复方案
报错原因
直接将df传入zip()时,zip会把整个df列表作为单个可迭代对象处理,迭代得到的每个元组元素是完整的列数组,str.join()无法拼接列表类型数据,因此触发报错。
修复方法
使用Python可迭代对象解包语法*,将df中存储的所有数组拆分为独立参数传入zip即可。后续新增列时仅需要把新数组追加到df列表中,不需要修改遍历逻辑。
修复后代码:
cat = ['aba', 'vdv'] dog = ['tul', 'baba'] # 新增列只需追加到df即可,示例:df = [cat, dog, pig, duck] df = [cat, dog] # 仅需修改此处,增加*解包df for x in zip(*df): # Python2环境可去掉括号,改为 print '\t'.join(x) print('\t'.join(x))
运行输出效果和初始实现完全一致:
aba tul vdv baba
内容的提问来源于stack exchange,提问作者Digsby
相关产品推荐
相关产品推荐

