2017-10-24 1 views
-3

Ich habe 2-Dateien, eine data.py genannt und die andere main.pyPython: Klassen mit mehreren Dateien

-Code data.py:

class data24: 
    w = 75 

Code main.py:

import data  
lala = data24 
print(lala.w) 

Es gibt mir zwei Fehler: "Daten" importiert aber nicht verwendet und "Daten24" undefiniert.

Ich habe bereits eine leere init .py Datei in das Verzeichnis gelegt.

Was mache ich falsch?

BTW, es druckt die richtigen Informationen.

Antwort

0

data24 ist eine Klasse. Um es zu verwenden, müssen Sie zuerst ein Objekt davon erstellen.

wie so lala = data24()

jetzt lala ist eine Instanz data24. Sie können jetzt Operationen darauf ausführen.

+1

'data24()' noch einen Fehler verursachen "data24 nicht definiert ist" – DeepSpace

0

Lasst uns den Code in Ihrem main.py analysieren und den Fehler finden:

import data 

Hier haben Sie data importiert. Danach erklären Sie eine Variable lala:

lala = data24 

Aber wo data24 kommt? Es kommt von data. Wenn Sie es nennen wollen, müssen Sie diese Zeile anpassen zu:

lala = data.data24 

Jetzt sollte es funktionieren, aber vielleicht nicht wie erwartet haben. Das liegt daran, dass Sie die Klasse data24 der lala zuweisen. Vielleicht möchten Sie lieber ein Objekt wie data.data24() instanziieren.

2

Um Ihrer selbst willen, gehen Sie bitte über ein grundlegendes Python-Tutorial. Es gibt einige grundlegende Fehler in Ihrem Code.

  1. Sie bedeutete wahrscheinlich w eine Instanz Attribut zu sein, so dass es in einem __init__ Methode initialisiert werden soll.

  2. data24 ist undefiniert. Sie müssen angeben, dass es von data stammt.

    data.data24 
    
  3. Um eine Instanz, die Sie () verwenden müssen, initialisieren.


class data24: 
    def __init__(self): 
     self.w = 75 


import data  

lala = data.data24() 
print(lala.w) 
+0

vielen Dank! Das hat meine Aufgabe erfüllt. :) –

+0

Ich würde keine Annahme machen, dass 'w' ein Instanzattribut sein sollte. Vielleicht ist es wünschenswert, ein Klassenattribut zu sein. Trotzdem ist es ein guter Punkt. – cezar

Verwandte Themen