Pythonを使用して継承されたオブジェクトを作成するにはどうすればよいですか?

アルネット

私は次のネストされたdictを持っています:

world = {'europe' :
                     {'france' : ['paris', 'lion'],
                      'uk' : ['london', 'manchester']}},
         {'asia' :
                     {'china' : ['beijing'],
                     {'japan' : ['tokyo']}}

私はそれから次のオブジェクトを試しています:

class world:
    continents = {} # dict of continents

class continent(world):
    name = '' # name of the continent
    countries = {} # dict of countries

class country(continent):
    name = '' # name of the country
    cities = [] # list of cities

class city(country):
    name = '' # name of the city

目標はcountriescontinentオブジェクトからすべてを取得することです。あるいはオブジェクトからcountrycontinent名前を取得するcityことです。

Pythonでこれを行うための最良の方法は何ですか?

ピンキア

構文的には、クラスは次のように定義する必要があります。

class World(object):
    def __init__(self, continents):
        self.continents = continents

class Continent(World):
    def __init__(self, name):
        self.name = '' # name of the continent
    ...

class Country(Continent):
    def __init__(self, name):
        self.name = '' # name of the country
    ...

class City(Country):
    def __init__(self, name):
        self.name = '' # name of the city
    ...

ただし、この場合は意味がありません。

サブクラス化とは別の意味です。

Class Animal(object):
    pass

Class Dog(Animal):
    pass

Class Snake(Animal):
    pass

犬は特定の種類の動物です。犬は動物です。ヘビも動物です。

あなたの場合、大陸は一種の世界ではなく、国は一種の大陸ではありません。

代わりに、これらのクラス関連付ける必要があります。これらのクラスは、別々のクラスとして存在することも、一方を他方の内部に配置することもできます。

例えば

class City(object):
    def __init__(self, name):
        self.name = '' # name of the city

class Country(object, cities):
    def __init__(self, name, cities):
        self.name = name # name of the country
        self.cities = cities # it's a list of Cities instances

class Continent(object):
    def __init__(self, name, countries):
        self.name = name # name of the continent
        self.countries = countries # it's a list of Countries instances

class World(object):
    def __init__(self, continents):
        self.continents = continents # it's a list of Continent instances

france = Country('France', [City('Paris'), City('Annecy'), City('St. Tropez')])
italy = Country('Italy', [City('Rome'), City('Milan')])
uk = Country('UK', [City('London'), City('Bath')])

europe = Continent('europe', [france, italy, uk])
...

注:上記は単なる例です。オブジェクトをどのように操作するかによっては、いくつかの理由から、Pythonでそれを行うのが最善の方法ではない場合があります。

それは広くて長い主題です。

オブジェクト指向(オブジェクト指向プログラミングの場合はOOP、オブジェクト指向設計の場合はOODとも呼ばれます)に関する優れたチュートリアルをオンラインで探すことをお勧めします。

これが1つのチュートリアルですが、オンラインで利用できるものは数千あります。

その後、ローカル/アプリケーションレベルで特定の機能を提供するために、オブジェクトが公開する必要のあるインターフェイスを設計できるようになります。

ヒント:RDBM(リレーショナルデータベース管理システム)を使用すると、モデルの関連付けと管理に役立ちます。データモデルの設計に役立つERD(エンティティ関係図)について学習します。

:)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

QT Creatorで継承されたクラスのオブジェクトとしてQWidgetを宣言するにはどうすればよいですか?

分類Dev

JavaScriptで既存のオブジェクトを継承する新しいオブジェクトを作成するにはどうすればよいですか?

分類Dev

継承されたクラスオブジェクトの配列を作成するにはどうすればよいですか?

分類Dev

親クラス関数で継承されたオブジェクトを使用するにはどうすればよいですか?

分類Dev

Pythonを使用してJSONオブジェクトのネストされた配列を作成するにはどうすればよいですか?

分類Dev

継承されたウィジェットを使用するときにブロックを破棄するにはどうすればよいですか?

分類Dev

C ++で継承されたオブジェクトに.txtファイルを読み取るにはどうすればよいですか?

分類Dev

pytestを使用してオブジェクトが正しく作成されたことを確認するにはどうすればよいですか?

分類Dev

Delphiで、1つの変数だけを使用して作成されたオブジェクトを参照するにはどうすればよいですか?

分類Dev

Javascriptを使用して動的オブジェクトを作成するにはどうすればよいですか?

分類Dev

JSONから継承したJavaScriptオブジェクトを取得するにはどうすればよいですか?

分類Dev

特定の属性のみを継承するオブジェクトのエイリアスを作成するにはどうすればよいですか

分類Dev

パラメータが基本型として宣言されている場合、継承されたオブジェクトのプロパティを取得するにはどうすればよいですか?

分類Dev

reactjs関数オブジェクトで継承を行うにはどうすればよいですか?

分類Dev

「withblock」で作成されたオブジェクトを見るにはどうすればよいですか?

分類Dev

AssociationTypeMisMatch:JSONを受け入れるRESTful API(Rails)を使用して、オブジェクトおよび関連付けられた(ネストされた)オブジェクトを作成するにはどうすればよいですか?

分類Dev

子要素をループしてオブジェクトのネストされた配列を作成するにはどうすればよいですか?

分類Dev

クラスを開いてActiveRecordオブジェクトに変換するにはどうすればよいですか?(たとえば、ActiveRecord :: Baseを継承するようにします)

分類Dev

多重継承のオブジェクトで使用する変数を指定するにはどうすればよいですか?

分類Dev

オブジェクトを作成して属性を追加するにはどうすればよいですか?

分類Dev

相互に継承しないオブジェクトをキャストするにはどうすればよいですか?

分類Dev

Javaで別のオブジェクトを使用してオブジェクトを作成するにはどうすればよいですか?

分類Dev

Java:継承されたクラスからオブジェクトを取得するgetterメソッドを作成するにはどうすればよいですか?

分類Dev

Java:継承されたクラスからオブジェクトを取得するgetterメソッドを作成するにはどうすればよいですか?

分類Dev

たくさんのオブジェクトを作成する関数を並行して実行するにはどうすればよいですか?

分類Dev

OpenCvを使用して画像に新しく表示されたオブジェクトのリストを取得するにはどうすればよいですか?

分類Dev

Stream APIを使用してオブジェクトからネストされたリストを取得するにはどうすればよいですか?

分類Dev

JAXBを使用してJavaでネストされたXMLオブジェクトのリストを解析するにはどうすればよいですか?

分類Dev

Reactフック:useState()を使用してネストされたオブジェクトの状態を更新するにはどうすればよいですか?

Related 関連記事

  1. 1

    QT Creatorで継承されたクラスのオブジェクトとしてQWidgetを宣言するにはどうすればよいですか?

  2. 2

    JavaScriptで既存のオブジェクトを継承する新しいオブジェクトを作成するにはどうすればよいですか?

  3. 3

    継承されたクラスオブジェクトの配列を作成するにはどうすればよいですか?

  4. 4

    親クラス関数で継承されたオブジェクトを使用するにはどうすればよいですか?

  5. 5

    Pythonを使用してJSONオブジェクトのネストされた配列を作成するにはどうすればよいですか?

  6. 6

    継承されたウィジェットを使用するときにブロックを破棄するにはどうすればよいですか?

  7. 7

    C ++で継承されたオブジェクトに.txtファイルを読み取るにはどうすればよいですか?

  8. 8

    pytestを使用してオブジェクトが正しく作成されたことを確認するにはどうすればよいですか?

  9. 9

    Delphiで、1つの変数だけを使用して作成されたオブジェクトを参照するにはどうすればよいですか?

  10. 10

    Javascriptを使用して動的オブジェクトを作成するにはどうすればよいですか?

  11. 11

    JSONから継承したJavaScriptオブジェクトを取得するにはどうすればよいですか?

  12. 12

    特定の属性のみを継承するオブジェクトのエイリアスを作成するにはどうすればよいですか

  13. 13

    パラメータが基本型として宣言されている場合、継承されたオブジェクトのプロパティを取得するにはどうすればよいですか?

  14. 14

    reactjs関数オブジェクトで継承を行うにはどうすればよいですか?

  15. 15

    「withblock」で作成されたオブジェクトを見るにはどうすればよいですか?

  16. 16

    AssociationTypeMisMatch:JSONを受け入れるRESTful API(Rails)を使用して、オブジェクトおよび関連付けられた(ネストされた)オブジェクトを作成するにはどうすればよいですか?

  17. 17

    子要素をループしてオブジェクトのネストされた配列を作成するにはどうすればよいですか?

  18. 18

    クラスを開いてActiveRecordオブジェクトに変換するにはどうすればよいですか?(たとえば、ActiveRecord :: Baseを継承するようにします)

  19. 19

    多重継承のオブジェクトで使用する変数を指定するにはどうすればよいですか?

  20. 20

    オブジェクトを作成して属性を追加するにはどうすればよいですか?

  21. 21

    相互に継承しないオブジェクトをキャストするにはどうすればよいですか?

  22. 22

    Javaで別のオブジェクトを使用してオブジェクトを作成するにはどうすればよいですか?

  23. 23

    Java:継承されたクラスからオブジェクトを取得するgetterメソッドを作成するにはどうすればよいですか?

  24. 24

    Java:継承されたクラスからオブジェクトを取得するgetterメソッドを作成するにはどうすればよいですか?

  25. 25

    たくさんのオブジェクトを作成する関数を並行して実行するにはどうすればよいですか?

  26. 26

    OpenCvを使用して画像に新しく表示されたオブジェクトのリストを取得するにはどうすればよいですか?

  27. 27

    Stream APIを使用してオブジェクトからネストされたリストを取得するにはどうすればよいですか?

  28. 28

    JAXBを使用してJavaでネストされたXMLオブジェクトのリストを解析するにはどうすればよいですか?

  29. 29

    Reactフック:useState()を使用してネストされたオブジェクトの状態を更新するにはどうすればよいですか?

ホットタグ

アーカイブ