文字列は"
か'
で囲んで生成する。
文字列は"
か'
で囲んで生成する。
挨拶 = 'こんにちは'
print(挨拶) # こんにちは
文字 = '100' # これは文字としての100
数値 = 100 # こっちは数値オブジェクト
print(文字 + 文字) # 100100
print(数値 + 数値) # 200
文字列の中には、ただの文字ではなく特別な意味で解釈される特殊文字を含めることができる。例えば\n
という特殊文字は改行と解釈される。
print('Hello\nworld!') # Helloの後改行が入る
特殊文字としての解釈をせず通常の文字扱いにすることをエスケープといい、\
を直前に付ける。
print('改行は\\nとコーディング') # 「改行は\nとコーディング」と出力
改行のために特殊文字\n
を多用するとコードの可読性が下がる。そこで"""
か'''
で囲んで文字列を生成すると、改行を見た目そのままコードに含められる。
長文 = '''改行、
しまくりの、
文字列。'''
print(長文)
上記の出力はこうなる。
改行、 しまくりの、 文字列。
文字列どうしをつなげるなら+
。
print('あいう' + 'えお') # あいうえお
数値オブジェクトはそのままでは文字列と連結できないので、文字列と合わせて出力したいなら、str
関数で文字列に変換する。
西暦 = 2016 # 数値オブジェクト
print('今年は' + str(西暦) + '年') # 今年は2016年
文字列を繰り返すなら*
と回数で掛け算をする。
print('あ' * 5) # あああああ
print('あ' * '5') # エラー
print('あ' * 5.0) # エラー
文字数のカウントはlen
関数。
あ行 = 'あいうえお'
print(len(あ行)) # 5
文字列中にあるキーワード文字列が含まれているか調べるなら、in
演算子を使って'キーワード' in '文字列'
のようにして、真偽値を得る。
print('いうえ' in 'あいうえお') # True
文字列から一部分を取ってくる(スライス)には、何文字目かというインデックス番号を使う。インデックスは一文字目が0番から始まる。
あ行 = 'あいうえお'
print(あ行[3]) # え
print(あ行[5]) # エラー
インデックスは後ろから数える場合は-1番目から始まり、-2と続く。
あ行 = 'あいうえお'
print(あ行[-3]) # う
print(あ行[-6]) # エラー
[以上:未満]
という書式で文字列スライスできる。範囲指定の場合、インデックスが範囲外でもエラーにならない。「以上」を省略すると最初の文字から、「未満」を省略すると最後の文字まで、という扱い。
あ行 = 'あいうえお'
print(あ行[1:3]) # いう
# エラーにならず
print(あ行[1:100]) # いうえお
print(あ行[:3]) # あいう
print(あ行[3:]) # えお
print(あ行[-3:]) # うえお
文字列オブジェクト.関数()
のようにして呼び出せる関数(メソッド)によって、様々な文字列操作ができる。文字列メソッドの一覧。