Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのNullオブジェクト


Pythonにはnullオブジェクトがありません。しかし、最も密接に関連する同様のオブジェクトはありません。この記事では、PythonでNoneがどのように動作するかを見ていきます。

NullとNoneのタイプを確認すると、Nullタイプがなく、NoneオブジェクトのタイプがNoneTypeであることがわかります。

print(type(None))
print(type(Null))

出力

上記のコードを実行すると、次の結果が得られます-

Traceback (most recent call last):
   File "C:\Users\xxx\scratch.py", line 4, in
      print(type(Null))
NameError: name 'Null' is not defined

なしに関する重要な事実

  • Falseと同じものはありません。

  • Falseと同じものはありません。

  • Falseと同じものはありません。

  • どれも空の文字列ではありません。

  • 0はありません。

  • Noneを何かと比較すると、None自体を除いて常にFalseが返されます。

Pythonのヌル変数

未定義の変数は、Null変数と同じではありません。変数にNoneを割り当てると、Pythonでは変数がnullになります。

var_a = None
print('var_a is: ',var_a)
print(var_b)

出力

上記のコードを実行すると、次の結果が得られます-

Traceback (most recent call last):
   File "C:\Users\Pradeep\AppData\Roaming\JetBrains\PyCharmCE2020.3\scratches\scratch.py", line 5, in <module>
      print(var_b)
NameError: name 'var_b' is not defined
var_a is: None

メソッドに関連付けられていない

何かがNoneとして宣言されている場合、そのメソッドを使用して要素を追加または削除することはできません。

listA = [5,9,3,7]
listA.append(18)
print(listA)
listA = None
listA.append(34)
print(listA)

出力

上記のコードを実行すると、次の結果が得られます-

[5, 9, 3, 7, 18]
Traceback (most recent call last):
   File "C:\Users\Pradeep\AppData\Roaming\JetBrains\PyCharmCE2020.3\scratches\scratch.py", line 7, in
      listA.append(34)
AttributeError: 'NoneType' object has no attribute 'append'

  1. Pythonデバッガー(pdb)

    ソフトウェア開発の専門用語では、「デバッグ」という用語は、プログラム内のエラーを見つけて修正するプロセスに広く使用されています。 Pythonの標準ライブラリには、Pythonプログラムをデバッグするためのユーティリティのセットであるpdbモジュールが含まれています。 デバッグ機能はPdbクラスで定義されています。このモジュールは、内部でbdbモジュールとcmdモジュールを使用します。 pdbモジュールには、非常に便利なコマンドラインインターフェイスがあります。これは、Pythonスクリプトの実行時に–m switchを使用してインポートされます。 python –m pdb

  2. Pythonのオブジェクト指向の概念を簡単に説明しますか?

    PythonでのOOPの概念 Pythonはオブジェクト指向プログラミング言語です。 Pythonでクラスとオブジェクトを簡単に作成して使用できます。 Pythonプログラミング言語の主なオブジェクト指向の概念を以下に示します- オブジェクト クラス 方法 継承 ポリモーフィズム データの抽象化 カプセル化 オブジェクト オブジェクトは、状態と動作を持つエンティティです。それは物理的および論理的かもしれません。例:マウス、キーボード、椅子、テーブル、ペンなど。 Pythonのすべてがオブジェクトであり、ほとんどすべてに属性とメソッドがあります。