空でない文字列の探索
このステップでは、Python で文字列が空でないかどうかを判断する方法を探索します。空でない文字列とは、少なくとも 1 文字を含む文字列のことです。この条件をチェックする方法はいくつかありますが、ここでは最も一般的で効率的な方法を説明します。
まず、VS Code エディタを使って、~/project
ディレクトリに string_check.py
という名前の Python ファイルを作成しましょう。
## ~/project/string_check.py
string1 = "Hello"
string2 = ""
if string1:
print("string1 is non-empty")
else:
print("string1 is empty")
if string2:
print("string2 is non-empty")
else:
print("string2 is empty")
このコードでは、以下のことを行っています。
- "Hello" を含む
string1
と、空の文字列である string2
の 2 つの文字列を定義しています。
if string1:
および if string2:
文を使って、文字列が空でないかどうかをチェックしています。Python では、空の文字列はブールコンテキストで False
と評価され、空でない文字列は True
と評価されます。
次に、python
コマンドを使ってスクリプトを実行しましょう。
python ~/project/string_check.py
以下のような出力が表示されるはずです。
string1 is non-empty
string2 is empty
これにより、Python が string1
を空でない文字列、string2
を空の文字列と正しく識別していることがわかります。
文字列が空でないかどうかをチェックする別の方法は、len()
関数を使うことです。len()
関数は文字列の文字数を返します。文字数が 0 より大きければ、その文字列は空でないということになります。
string_check.py
ファイルを len()
関数を使うように変更しましょう。
## ~/project/string_check.py
string1 = "Hello"
string2 = ""
if len(string1) > 0:
print("string1 is non-empty")
else:
print("string1 is empty")
if len(string2) > 0:
print("string2 is non-empty")
else:
print("string2 is empty")
再度スクリプトを実行します。
python ~/project/string_check.py
出力は前と同じになります。
string1 is non-empty
string2 is empty
どちらの方法も文字列が空でないかどうかをチェックするのに有効です。最初の方法(ブールコンテキストで文字列を直接使用する方法)は、一般的により Python らしく、読みやすいとされています。