str = 'I am studying python'
Pythonで文字列が全て出力できるかどうか確認する方法です。
使用するのはPython標準ライブラリのisprintableメソッドです。
出力できる状態とは、print関数で実行した際に正しく文字列が表示される状態のことです。
isprintableメソッドでは、文字列がすべて出力できる場合にはTrue、出力できない文字が含まれている場合にはFalseを返します。
簡単な文字列を変数に格納してみましょう。
str.isprintable()
文字列の中が全て出力できる場合はTrueが返されます。
list.isprintable()で実行します。
Trueが返されました。
str = 'I am\n studying\a python'
str.isprintable()
print(str)
特殊文字が入っている文字列で試してみます。
特殊文字とは改行を表す\nやバックスペースを表す\b、タブを表す\tなどがあります。
実行します。
Falseが返されました。
print関数ではこのように表示されます。
str = 'I am studying python'
str.isprintable()
print(str)
また、半角スペースは出力できますが、全角スペースは出力できない文字とされています。
全角スペースが入った文字列を変数に格納します。
実行します。
Falseが返されました。
全角スペースに関しては、print関数では問題なく表示されているように見えますが、文字コードを定めるUnicodeの規定で印字されないものと定義されています。