Pythonの三重引用符(トリプルクォート)の使い方を徹底解説
Pythonの三重引用符(トリプルクォート)とは
Pythonの三重引用符(トリプルクォート)を使うと、改行(NEWLINE)、タブ、その他の特殊文字をそのまま含んだ、複数行にわたる文字列を簡単に作成できます。長いテキストやdocstring(ドキュメンテーション文字列)を記述する際に非常に便利な機能です。
三重引用符の構文は、シングルクォート3つ連続(''')またはダブルクォート3つ連続(""")で表します。
使用例
#!/usr/bin/python para_str = """this is a long string that is made up of several lines and non-printable characters such as TAB ( \t ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ \n ], or just a NEWLINE within the variable assignment will also show up. """ print(para_str)
出力結果
上記のコードを実行すると、次のような結果が出力されます。
注目すべきは、文字列末尾の「up.」と閉じの三重引用符の間にある最後の改行に至るまで、すべての特殊文字がそのまま表示形式へ変換されている点です。また、改行は行末で明示的に改行した場合にも、エスケープコード(\n)を指定した場合にも発生します。
this is a long string that is made up of several lines and non-printable characters such as TAB ( ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ ], or just a NEWLINE within the variable assignment will also show up.
raw文字列(Raw Strings)とは
raw文字列では、バックスラッシュは特殊文字として扱われません。raw文字列内に記述したすべての文字は、書いたとおりの形でそのまま保持されます。
通常の文字列の場合
#!/usr/bin/python
print('C:\\nowhere')出力結果
上記のコードを実行すると、次のような結果が出力されます。
C:\nowhere
次に、raw文字列を使ってみましょう。式を r'expression' のように先頭に r を付けて記述します。
raw文字列の場合
#!/usr/bin/python print(r'C:\\nowhere')
出力結果
上記のコードを実行すると、次のような結果が出力されます。
C:\\nowhere
このように、Windowsのファイルパスなどバックスラッシュをそのまま扱いたい場面では、raw文字列を活用することでエスケープ処理の手間を省けます。
-
Pythonで文字列を逆順に反転する方法|追加メモリ不要のインプレース手法
文字の配列が与えられたとき、追加のメモリ領域を使用せずに文字列を逆順に反転することを考えます。たとえば、入力が [H, E, L, L, O] である場合、期待される出力は [O, L, L, E, H] となります。 解法のアプローチ この問題は「Two Pointers(ツーポインタ)」と呼ばれる定番のテクニックで効率的に解けます。考え方はシンプルで、配列の両端から中央に向かって文字を交換していくだけです。 手順 2つのポインタを用意します:start = 0、end = 文字列の長さ - 1 s[start] と s[end] の文字を入れ替えます start を1つ増やし、end を
-
Pythonのcasefold()メソッドとは?文字列の小文字変換と比較方法を解説
Pythonのcasefold()は、文字列内の英字をすべて小文字に変換するためのメソッドです。lower()と似ていますが、より積極的な変換を行う点が特徴で、ドイツ語の「ß」が「ss」に変換されるなど、国際化対応において強力な働きをします。2つの文字列に対してcasefold()を適用すれば、大文字・小文字の違いを無視して値を一致させることができます。そのため、ユーザー入力の比較や検索処理などで非常に役立ちます。casefold()の基本的な使い方次の例では、文字列にcasefold()を適用し、すべて小文字に変換された結果を出力しています。コード例string = BestTutorial