1

これを行うためのより簡単な方法があるはずです:

header_line = [x for x in my_dict.keys()]
header_line.insert(0, "1st column\t2nd column")
header_line.append("note")
print "\t".join(map(str, header_line))

単純に、次のように動作するはずだと思いましたが、header_line で構文エラーが発生します。

header_line = ["1st column", "2nd column", x for x in my_dict.keys(), "note"] 
print "\t".join(map(str, header_line))
4

2 に答える 2

4

どうですか

header_line = ['1st column', '2nd column'] + [x for x in my_dict.keys()] + ['note']

コメントで述べたように、この場合は単にmy_dict.keys()orlist(my_dict)を使用できますが、上記の例は、リスト内包表記を自明に排除できない場合にこれを行う方法の例として依然として役立ちます。

于 2013-10-27T20:58:46.983 に答える
2

itertools.chainより多くの生成ジェネレーターがある場合に使用できます。

import itertools

print "\t".join(itertools.chain(["1st column", "2nd column"], my_dict, ["note"]))
于 2013-10-27T21:04:15.307 に答える