続いてstr型です。多分str型なんてどこにもありません。ご本人もシーケンス型とか文字列型とか、テキストシーケンス型なご自分は何者か見失っていることでしょう。
ここで学習すること
- 型としてのstr
- strへの変換
サンプルコード
sample01.py
#!/usr/bin/env python3.8 x = "aaa,bbb,ccc" list = x.split(",") print(list)
説明
型としてのstr
文字列を表すstrですが、サンプルコードでは”ダブルクォート”で囲っています。実際には文字リテラルには以下の3つの記述方法があります。
例 | 説明 | |
シングルクォート | ‘文字列1’ | ‘シングル’ クォートで囲われた部分が文字列です。 “ダブル” クォートを埋め込むことができます。 |
ダブルクォート | “文字列2” | “ダブル” クォートで囲われた部分が文字列です。 ‘シングル’ クォートを埋め込むことができます。 |
三重引用符 | ”’文字列3”’ “””文字列4″”” | ”’三つのシングルクォート”’あるいは “””三つのダブルクォート”””で囲われた部分が 文字列です。 複数行にわたっての表現が可能です。 |
ここでは型と言ってはいますが、strはオブジェクトなのでメソッド持ちます。例えば、”aaa,bbb,ccc”のようなカンマ区切りの文字列があったとき、それをカンマで分割してリストにしたいと思った場合以下のように処理可能です。
実行
$ python sample01.py ['aaa', 'bbb', 'ccc'] $
その他にも良く使用するメソッドがいくつかありますが、そのあたりはこんなとき?で取り扱いたいと思います。
strへの変換
続いてstrへの変換です。度々行われるのはprint()などで異なる型のものを文字列として連結して使われるケースです。
ほとんど全ての方が一度はやったことがあるのは以下のようなコードだと思います。
x = 1 print("result: " + x)
とても残念なことに、なにがどう間違っているのかということまでエラーで示してくれますが、ルールはルールですと言わんばかりに処理してくれません。
正しくは以下です。
print("result: " + str(x))
strへ変換したければstr()を使うことになります。