文字列

記事
IT・テクノロジー

リテラル

 エスケープ文字を文字として扱う

r"文字列"
f-string と組み合わせる
fr"文字列"

 複数行文字列

"""1行目
2行目 ...
"""
' や " は文字として扱われるのでエスケープする必要なし

 複数行に分けて書く

文字列 = (
    "1行目"
    "2行目"
    ...
    )
※行の間に , を入れない

連結

s1 + s2
大量の文字列を連結する
リスト.append(文字列)
...
"区切り文字".join(リスト)

分割

 文字列 -> リスト

空白文字
文字列.split()
連続する空白文字は一つの区切り文字扱い
改行
文字列.splitlines()
"\n" だけでなく、"\r" や "\r\n" などの異なる改行コードにも対応
改行 + 空行と空白行を除去
[s for s in 文字列.splitlines() if s and not s.isspace()]

  指定

文字列.split("区切り文字")
複数指定
import re
re.split("正規表現", 文字列)

空白除去

文字列.strip()
末尾
文字列.rstrip()

チェック

空文字列ではない
if 文字列:
空文字列か
if 文字列 == "":
if not 文字列:
文字列型か
isinstance(値, str)
含む
キーワード in 文字列
始まる
文字列.startswith(キーワード)
 複数指定
文字列.startswith(タプル):
終わる
文字列.endswith(キーワード)
 複数指定
文字列.endswith(タプル)
文字列がすべて0〜9の数字か
文字列.isdecimal()
空白系か (スペース、タブ、改行)
文字列.isspace()

置換

すべて
新 = 文字列.replace(old, new)
回数を指定
新 = 文字列.replace(old, new, count=回数)

文字コード

指定
str(バイナリ, encoding="文字コード")
encoding は byte型 のみ指定できる

空白文字

スペース
タブ
改行
復帰
垂直タブ
改ページ

サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す