Pythonのisprintable()メソッドの使い方と応用例を徹底解説
この記事では、Pythonに組み込まれている文字列メソッドisprintable()について、その基本的な使い方と実際の応用例をわかりやすく解説します。
isprintable()メソッドとは?
isprintable()は、文字列操作のために用意されているPythonの組み込みメソッドです。文字列内のすべての文字が「印字可能(printable)」な文字である場合、または文字列が空の場合には True を返し、それ以外の場合は False を返します。
引数について
このメソッドは呼び出し時に引数を一切取りません。対象となる文字列自身に対して直接実行します。
印字可能な文字とは?
印字可能な文字には、以下のようなものが含まれます。
- 数字(0〜9)
- 英字(アルファベット)
- 記号や特殊文字
- 半角スペース
一方で、改行コード(\n)やタブ(\t)などのエスケープシーケンスは、画面上にそのまま表示されないため「印字不可能」と判断されます。
サンプルコード1:基本的な判定例
# 印字可能な文字列かどうかをチェック st = 'Tutorialspoint' print(st.isprintable()) # 改行コード \n は印字可能かどうかをチェック st = 'Tutorials \n point' print(st.isprintable()) # 空文字列の場合は True を返す string = '' print(string.isprintable())
実行結果
True False True
通常の文字列は True、改行を含む文字列は False、空文字列は True と判定されていることがわかります。
サンプルコード2:記号を含む場合の判定例
# 記号を含む文字列のチェック st = 'Tutorials$$point&&' print(st.isprintable()) # タブ \t は印字可能かどうかをチェック st = 'Tutorials \t point' print(st.isprintable()) # アンダースコアは印字可能かどうかをチェック string = '_' print(string.isprintable())
実行結果
True False True
$ や &、_ といった記号はすべて印字可能な文字として扱われるため True が返されますが、タブ文字 \t を含む場合は False となります。
isprintable()の実用的な応用例
ランタイムエラーの回避: 印字不可能な文字が原因でコンソール出力時にエラーが発生するケースでは、このメソッドで事前に判定し、非印字文字を別の記号などに置き換えることで例外を安全に処理できます。
出力の整形・クリーンアップ: 出力結果を特定のフォーマットに整えたいとき、エスケープシーケンスなどの不要な制御文字を除去する用途にも役立ちます。
まとめ
この記事では、Python 3.xにおける isprintable() メソッドの仕組みと、その実践的な活用方法について学びました。文字列に含まれる文字がすべて印字可能かどうかを簡単に判定できるため、ログのクレンジングやユーザー入力のバリデーションなど、さまざまな場面で活用できる便利なメソッドです。
-
Pythonでベクトルxを90度回転・加算してベクトルyに到達できるか判定するアルゴリズム
2次元平面上に3つのベクトル x、y、z があるとします。ベクトル x を起点として、「90度(時計回り)の回転」または「ベクトル z の加算」を必要な回数だけ繰り返すことで、ベクトル y に到達できるかどうかを判定するのがこの問題です。 たとえば、入力が x = (-4, -2)、y = (-1, 2)、z = (-2, -1) である場合、出力は True になります。x に対して z を加算する操作と 90 度の時計回り回転を組み合わせることで、y = (-1, 2) の位置に到達できるからです。 解法のアプローチ この問題は、次の手順に沿って解くことができます。 1. util()
-
Pythonで学ぶ相関と回帰分析の基礎|Seabornを使ったデータ分析入門
相関(Correlation)とは、2つのデータセット間に存在する依存関係を含む統計的な関係性を指します。一方、線形回帰(Linear Regression)は、従属変数と1つ以上の独立変数の間の関係を直線的なアプローチで捉える手法です。独立変数が1つの場合は「単回帰」、複数ある場合は「重回帰」と呼ばれます。相関とは何か依存現象の身近な例としては、親と子の身体的特徴(外見)の類似性や、商品の価格と供給量の関係などが挙げられます。価格が上がれば供給量が増える、といった具合に、変数同士が互いに影響し合う様子を統計的に表したものが相関です。本記事では、Pythonの可視化ライブラリ「Seaborn」