2017-11-12 14 views
0

前記クラスの実際の名前を使用せずにインスタンス化できるクラスを作成できますか?たとえば、文字列を作成するときに 'String'クラスをインスタンス化していますが、その間に 'String'という単語は使用していません。例えばPythonでクラス名を使用しないクラスのインスタンスを作成する

example = "Hello, World!" 

このようなクラスを作成することができる場合は、どうすればよいでしょうか?

+0

Pythonは、Python標準ライブラリで組み込みのデータ型(int、stringなど)を認識します。このような動作が必要な場合は、組み込みの型を拡張しようとしています。 – brokenfoot

+0

組み込み型を拡張しても、既存のリテラルを共用することはできません。特定のクラスを生成するためにハードコードされています。 – chepner

答えて

1

作成しようとしているものを定義せずにオブジェクトをインスタンス化する方法はありません。クラス(オブジェクト)は、単にメモリに格納されたプログラムの表現です。変数と同様に、オブジェクト名は、そのオブジェクトがメモリに格納される場所と、メモリからそのデータにアクセスする方法を定義します。新しい変数名を割り当ててオブジェクトをインスタンス化するだけで、現在のプログラム内でオブジェクトをエイリアスできますが、オブジェクトを呼び出す必要があります。

関連する問題