Python でリストをカンマ区切りの文字列に変換する
リストを使用して、さまざまな要素を共通の名前で格納できます。文字列は文字の集まりです。
このチュートリアルでは、リストをコンマ区切りの文字列に変換します。
Python で join()
関数を使用してリストをカンマ区切りの文字列に変換する
join()
関数は、反復可能要素の要素を組み合わせて文字列を返します。文字列内の要素の区切り文字として使用される文字を指定する必要があります。
カンマ区切りの文字列を作成するには、カンマを区切り文字として使用します。
以下のコードを参照してください。
lst = ["c", "e", "a", "q"]
s = ",".join(lst)
print(s)
出力:
c,e,a,q
上記のメソッドは、文字列を含むリストにのみ制限されています。
リスト内包表記と str()
関数を使用して、整数またはその他の要素を含むリストを操作できます。リスト内包表記を使用すると、for
ループを使用して要素を 1 行で簡単に反復処理し、str()
関数を使用して各要素を文字列に変換できます。
これを次のコードで実装します。
lst = [8, 9, 4, 1]
s = ",".join([str(i) for i in lst])
print(s)
出力:
8,9,4,1
map()
関数を使用して、リスト内包表記を削除することもできます。map()
関数を使用すると、str()
関数をすべての要素に適用することで、リストのすべての要素を文字列に変換できます。
例えば、
lst = [8, 9, 4, 1]
s = ",".join(map(str, lst))
print(s)
出力:
8,9,4,1
Python で StringIO
モジュールを使用してリストをカンマ区切りの文字列に変換する
StringIO
オブジェクトはファイルオブジェクトに似ていますが、テキストを処理するためにメモリ内にあります。Python 2 では、StringIO
モジュールを使用して直接インポートできます。Python 3 では、io
モジュールに保存されていました。
csv.writerow()
関数を使用して、リストを StringIO
オブジェクトの CSV ファイルのコンマ区切り行として書き込むことができます。このためには、最初に csv.writer
オブジェクトをインスタンス化する必要があります。次に、getvalue()
関数を使用して、このオブジェクトの内容を文字列に格納できます。
次のコードを参照してください。
import io
import csv
lst = [8, 9, 4, 1]
s_io = io.StringIO()
writer = csv.writer(s_io)
writer.writerow(lst)
s = s_io.getvalue()
print(s)
出力:
8,9,4,1
unpack 演算子で print()
関数を使用することもできます。unpack 演算子*
は、反復可能オブジェクトのすべての要素を解凍し、print()
関数の file
パラメーターを使用して StringIO
オブジェクトに格納します。
以下のコードを参照してください。
import io
lst = [8, 9, 4, 1]
s_io = io.StringIO()
print(*lst, file=s_io, sep=",", end="")
s = s_io.getvalue()
print(s)
出力:
8,9,4,1
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn関連記事 - Python List
- Python でリストから要素の出現をすべて削除する
- Python で辞書をリストに変換する
- Python でリストから重複を削除する
- Python でリストの平均を取得する方法
- リストメソッドの追加と拡張の違いは何ですか
- Python でリストを文字列に変換する方法