アフマドFaheem:
私が使っている辞書です。
dict={'item': [1,2,3], 'id':['a','b','c'], 'car':['sedan','truck','moped'], 'color': ['r','b','g'], 'speed': [2,4,10]}
私は、次のようなプットをタブ区切りを生成しようとしています:
item id
1 a
2 b
3 c
私が書いたコード:
with open('file.txt', 'w') as tab_file:
dict_writer = DictWriter(tab_file, dict.keys(), delimiter = '\t')
dict_writer.writeheader()
dict_writer.writerows(dict)
具体的には、私は列ベースの方法で、ファイルへの書き込みに苦しんでいます。辞書のキーはヘッダとして移入、および辞書の値は関連するヘッダの下に垂直に移入することを、意味します。また、私はパンダを使用しての贅沢を持っていません
ルアン:
このソリューションは、辞書内の項目とサブ項目の曖昧な数のために動作します:
d = {'item': [1, 2, 3], 'id': [4, 5, 6]}
for i in d:
print(i + "\t", end="")
numSubItems = len(d[i])
print()
for level in range(numSubItems):
for i in d:
print(str(d[i][level]) + "\t", end="")
print()
EDIT:テキストファイルへの書き込みでこれを実装するには:
d = {'item': [1, 2, 3], 'id': [4, 5, 6], 'test': [6, 7, 8]}
with open('file.txt', 'w') as f:
for i in d:
f.write(i + "\t")
numSubItems = len(d[i])
f.write("\n")
for level in range(numSubItems):
for i in d:
f.write(str(d[i][level]) + "\t")
f.write("\n")