我有一个像这样的元组列表:
[(1, u'Category'), (2, u'Item'), (3, u'SubItem'), (4, u'N/A'), (1, u'Features'), (2, u'Tool Baseline')]
我想根据每个元组的第一个元素使用缩进写入文件:
Category
Item
SubItem
N/A
Features
Tool Baseline
我是Python的新手,我正在寻找一种简单的方法来做到这一点:
if tup[0] == 1
file.write('\t')
file.write(tup[1])
(这些元组曾经是多层树的一部分,每个数字代表一个分支。)
答案 0 :(得分:1)
Python比你想象的更棒:
file.write('\t' * tup[0])
file.write(tup[1])
答案 1 :(得分:1)
你可以乘以字符串!在以下pair[0]*'\t'
中,我们会为您提供pair[0]
标签字符。
>>> x = [(1, u'Category'), (2, u'Item'), (3, u'SubItem'), (4, u'N/A'), (1, u'Features'), (2, u'Tool Baseline')]
>>> for pair in x:
... print pair[0]*'\t' + pair[1]
...
Category
Item
SubItem
N/A
Features
Tool Baseline
>>>
只需用文件I / O操作替换打印。
file.write('\t'*tup[0])
file.write(tup[1])