MOの気になることを適当に伝えるブログ

moNote

Python

python - 文字列

投稿日:

Python の 文字列の説明。

文字列

文字列は 単引用符('・・・・') で囲むか、二重引用符("・・・")で囲みます。 引用符は \ でエスケープできます。

str = '単引用の中では"がそのまま使える  \'  と\\で表示'
print(str)
単引用の中では"がそのまま使える  '  と\で表示
str = "二重引用の中では'がそのまま使える  \"  と\\で表示"
print(str)
二重引用の中では'がそのまま使える  "  と\で表示

引用符の前に r を付けると raw strings が使えます。

str = r'rが付くと\をそのまま表示'
print(str)
rが付くと\をそのまま表示

三連引用符

三連引用符 ( '''・・・''' や """・・・""" ) を使うことで、複数行に書けます・

str = '''
Usage: thingy [OPTIONS]
     -h
     -H hostnam
'''
print(str)
 
Usage: thingy [OPTIONS]
     -h
     -H hostnam
 

改行文字は自動的に文字列に含まれるが、行末に\を付けると改行を含めないようになります。(1行目と最終行も上の実行結果と違います)

str = '''\
Usage: thingy [OPTIONS]
     -h \
     -H hostnam\
'''
print(str)
Usage: thingy [OPTIONS]
     -h      -H hostnam

文字列の結合

+ 演算子で 連結。

str = "Apple" + "pen"
print(str)
Applepen

連続する 文字列は 自動的に連結される。

str = "Apple" "pen"
print(str)
Applepen

変数ではエラーになります。 文字列どうしのみ。

str1 = "Apple"
str2 = "pen"
str3 = str1 + str2  # +が無いとエラー
print(str3)

文字列とインデックス

文字列は インデックス (添字) を指定して文字を取得できます。最初の文字のインデックスは 0 になります。

str = "Python"
print(str[0])
print(str[3])
P
h

インデックスには、負の値も指定できまます。この場合、右から数えていきます。一番右が-1になります。

str = "Python"
print(str[-1])
print(str[-3])
n
h

インデックスに加え、スライス もサポートされています。インデックスは一文字づつ取得するのに使いますが、スライス は部分文字列を取得します。
開始は含まれ、終了は含まれません。

str = "Python"
print(str[0:2])
print(str[2:3])
Py
t

[開始:終了] の 開始と終了はそれぞれ省略できます。 開始は省略すると0 終了は文字列のサイズとみなされます。

str = "Python"
print(str[:3])
print(str[3:])
print(str[:])
Pyt
hon
Python

公式に スライスの指定の覚え方が記載してあった。 分かりやすいぞこれ!

-+---+---+---+---+---+---+
 | P | y | t | h | o | n |
-+---+---+---+---+---+---+
 0   1   2   3   4   5   6
-6  -5  -4  -3  -2  -1

文字列の一部を変更することはできない。

Python の文字列は変更できません。つまり 不変 です。従って、文字列のインデックスで指定したある場所に代入を行うとエラーが発生します

str = "Python"
str[0] ="p"     # エラー
print(str)

文字列の長さ

文字列の長さは len関数を使う

str = "Python"
print(len(str))
6

-Python
-

Copyright© moNote , 2020 All Rights Reserved Powered by STINGER.