HOWTO · Python
Python でリストを文字列に変換する方法
このチュートリアルでは、Python でリストを文字列に変換する方法を紹介します
Python で str リストを文字列に変換する
str.join() メソッドを使用して、str データ型要素を含むリストを文字列に変換できます。
例えば、
A = ["a", "b", "c"]
StrA = "".join(A)
print(StrA)
## StrA is "abc"
join メソッドは任意の数の文字列を連結します。メソッドが呼び出される文字列は、指定された各文字列間に挿入されます。例に示すように、"" (空の文字列)がリスト要素の間に挿入されます。
要素間にスペースを追加したい場合は、" "を使用する必要があります
StrA = " ".join(A)
## StrA is "a b c"
Python で非 str リストを文字列に変換する
この join メソッドには、指定されたパラメーターとして str データ型が必要です。したがって、int タイプリストに変換ようとすると、TypeError が発生します。
>>> a = [1,2,3]
>>> "".join(a)
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
"".join(a)
TypeError: sequence item 0: expected str instance, int found
int 型は、結合する前に str 型に変換する必要があります。
リスト内包表記 - List comprehension
>>> a = [1,2,3]
>>> "".join([str(_) for _ in a])
"123"
map 関数
>>> a = [1,2,3]
>>> "".join(map(str, a))
'123'
map 関数は、str リスト a 内のすべての要素に関数を適用し、反復可能な map オブジェクトを返します。
"".join() は map オブジェクト内のすべての要素を反復し、結合された要素を文字列として返します。