OKADA LABO

[python]リストの中身を文字列に変換する。

pythonでリストの中身を文字列に変換する方法。
リストは、文字列を格納する場合と、数値を格納する場合とで、扱い方が違う。

 

使うのは「joinメソッド」と「mapメソッド」

 

まず、現象だけ書くと以下になる。

fruits = ['りんご', 'ばなな', 'すいか']
mojiretsu = ','.join(fruits)

print(mojiretsu)

 

出力結果は

りんご,ばなな,すいか

 

fruits内の要素を文字列、文字並びとして出力してる。

 

このリストfruitsは、文字を格納している。
その場合、join関数を使うと一発で
リストに格納されてる要素すべて(すべて文字)を
文字並びに変換してくれる。

 

join関数の使用ルール

'区切り文字'.join(リスト関数)

 

区切り文字は半角スペースにすることも可能

今回はリストfruitsの中身を , で区切って文字並びにする。
よって

','.join(fruits)

 

次に、リストに格納されてる要素に数値が混ざってる場合、もしくはすべて数値の場合。

num = [1, 2, 3]
maped_num = map(str, num) #格納される数値を文字列にする
mojiretsu = ','.join(maped_num)

print(mojiretsu)

 

mapはリストに格納されてる要素をすべて文字列に変換してくれる。

mapの記述ルール

map([適用関数], [対象リスト])

今回はstr(文字)にしたいので

map(str, num)

あとは、それをjoinを適用すれば、
数値でも文字列として、文字並びにできる