01 / 07
区切りで分けてリストにする
split(スプリット、分割する)は、文字列を区切りで分けてリストにする。
カッコの中に「何で区切るか」を書く。下の例ではカンマで区切っているよ。
print("あか,あお,きいろ".split(","))実行結果
['あか', 'あお', 'きいろ']
くり返しとデータの持ち方
INPUT · スライド
01 / 07
split(スプリット、分割する)は、文字列を区切りで分けてリストにする。
カッコの中に「何で区切るか」を書く。下の例ではカンマで区切っているよ。
print("あか,あお,きいろ".split(","))実行結果
['あか', 'あお', 'きいろ']
02 / 07
返ってくるのがリストだということは、リストで覚えたことがそのまま使えるということ。
番号で取り出す、len で数える、for で回す。文字列のままでは面倒だったことが、リストにした瞬間に簡単になるよ。
iros = "あか,あお,きいろ".split(",")print(iros[0])print(len(iros))実行結果
あか 3
03 / 07
区切りはカンマでなくてもいい。空白でも、好きな文字でも指定できる。
人が書いた文は空白で区切られていることが多いので、split(" ") の出番は多いよ。
bun = "やまだ はなこ"print(bun.split(" "))実行結果
['やまだ', 'はなこ']
04 / 07
逆向きが join(ジョイン、つなぐ)。リストの要素を1本の文字列につなげる。
ただし、書き方の形が少し意外だ。
print(",".join(["あか", "あお", "きいろ"]))実行結果
あか,あお,きいろ
05 / 07
iros.join(",") と書きたくなるけれど、Pythonは逆だ。区切り文字に .join をつけて、リストをカッコに渡す。
なぜこの形かというと、join は「このわたしを、あいだにはさんでつなぐ」という命令だからだよ。主役は区切り文字のほうなんだ。
区切りを変えたければ、前の文字列を変えるだけ。"、".join(...) でも "".join(...) でもいい。
iros = ["あか", "あお"]print("と".join(iros))print("".join(iros))実行結果
あかとあお あかあお
06 / 07
split と join は往復できる。分けてリストにして、リストの道具で手を加えて、またつなぐ。
これが文字列を加工するときの定番の流れだよ。下の例は、カンマ区切りを「と」区切りに作り変えている。
iros = "あか,あお,きいろ".split(",")print("と".join(iros))実行結果
あかとあおときいろ
07 / 07
このグループでやったことを振り返ろう。
namae[0] … 番号で1文字。リストと同じnamae[0:3] … スライスで切り出す。リストと同じin find count … さがすupper strip replace … 加工する。元は変わらないsplit join … リストと行き来する番号とスライスは、リストで覚えたものがそのまま効いた。Python は「並んでいるもの」を同じ書き方で扱えるように作られている。1つ覚えれば、次からは覚えることが減るんだ。