2016-07-28 20 views
0

i auf Python-Programmierung Neuling, ich so verwirrt, warum ich eine andere Methode aus einer anderen Klasse aufrufen kann nicht,Aufruf einer anderen Methode zu einer anderen Klasse

das ist mein Quellen- Datei: 8_turunan lanjut.py

class Karyawan(object): 
'untuk kelas karyawan' 
jml_karyawan = 0 # Class variable 

# constructor 
def __init__(self, kid, nama, jabatan): 
    self.kid = kid 
    self.nama = nama 
    self.jabatan = jabatan 
    Karyawan.jml_karyawan += 1 


# method 
def infoKaryawan(self): 
    print "Karyawan baru masuk" 
    print "===================" 
    print "ID : %s " % self.kid 
    print "Nama : %s " % self.nama 
    print "Jabatan : %s " % self.jabatan 

Sekunden Quelldatei: 9_turunan advance.py

# cara mengakses/memakai class/membuat Object 
class cobaa(): 
    obj = Karyawan("K001", "Ganjar", "Teknisi") 
    obj.infoKaryawan() 
    # tambah karyawan baru 
    obj2 = Karyawan("K002", "Nadya", "Akunting") 
    obj2.infoKaryawan() 

    # tampilkan total Karyawan 
print "-----------------------------" 
print "Total Karyawan : %d " % Karyawan.jml_karyawan 

wie kann ich rufen Methode init und infoKaryawan Klasse cobaa auf Datei 9_turunan adv ance.py

i setzen bereits from percobaan.Karyawan import __init__ auf Datei: 9_turunan voraus und seine falsch, ich weiß nicht, wo das Problem meiner Quelle ist

hier mein Verzeichnis sturcture directory structure

+1

Sie sollten keine Leerzeichen in Ihre Python-Dateien oder Paketnamen –

+0

hmmm, ich bin Neuling auf Python Mate..können Sie mir den Grund, warum ich nicht Platz auf meine Dateien/Pakete setzen sollte? weil meine IDE (pyCharm Community) ihre Unterstützung Platz zu setzen, dann versuche ich ... und 1 weitere Dinge, warum der Raum (4 Raum über Linie Klasse Deklaration) so beeinflussen, keine Offsense ich nur etwas meine Erfahrung fragen Mate :) – jethow

+0

Leerzeichen verursachen ein Problem beim Importieren. Ich spreche nicht über den Abstand innerhalb des Inhalts der Dateien. Das ist nur Python Stil Richtlinien genannt PEP 8 –

Antwort

1

Ihr Einzug in Ihrer Klasse ist aus . Es sollte wie folgt lauten:

class Karyawan(object): 
    'untuk kelas karyawan' 
    jml_karyawan = 0 # Class variable 

    def __init__(self, kid, nama, jabatan): 
     self.kid = kid 
     self.nama = nama 
     self.jabatan = jabatan 
     Karyawan.jml_karyawan += 1 

    def infoKaryawan(self): 
     print "Karyawan baru masuk" 
     print "===================" 
     print "ID : %s " % self.kid 
     print "Nama : %s " % self.nama 
     print "Jabatan : %s " % self.jabatan 

Dann in der anderen Datei importieren nur als solche: from filename import Karyawan

Viel Glück!

+0

meine Identität ist auf Kumpel, ich weiß nur, dass Dateiname kann nicht numerisch bei den ersten Worten aber danke für ** von Dateiname Import Karyawan ** ist richtig :) – jethow

+0

Ah ok, keine Sorgen dann. Ihre Formatierung in Ihrer Frage hat mich wirklich abgewiesen, da sie die Bedingungen verursachen könnte, nach denen Sie gefragt haben. Trotzdem, froh, dass es geklappt hat. – Carlos

+0

danke so viel Kumpel :) – jethow

Verwandte Themen