リストの要素を使用して文字列を記述し、各要素を,
, または必要な区切り文字で結合するだけです。次に、\t
それらの間に a を使用してリストを出力します。
with open(outfilename, 'at') as outfile:
major = ",".join(str(i) for i in major)
minor = ",".join(str(i) for i in minor)
outfile.writelines("%s\t%s\n" % (major, minor))
次の行の背後にある魔法は、実際には非常に単純です。
major = ",".join(str(i) for i in major)
Python はリスト内包表記という名前の機能を提供します。これにより、非常に明確で単純な構文でリストの要素に対してアクションを実行できます。
たとえば、 list がある場合、 listl = [1, 2, 3, 4, 5]
を実行して、要素を整数から文字列に変換し、メソッドを呼び出しますstr()
。
do _something_ with _element_ foreach _element_ in list _l_
str(element) for element in l
これを行うと、結果の各文字列が一度に作成され、次のステートメントにジェネレーターが含まれます。
(str(element) for element in l)
このメソッドjoin
は、要素のリストを反復するか、ジェネレーターからこの要素を受け取ることによって機能するため、次のことができます。
delimiter = ","
delimiter.join(str(element) for element in l)
上記の操作が明確になることを願っています。