2016-07-28 55 views
0

我新受上Python編程,我很困惑,爲什麼我不能調用另一個方法從另一個類,調用其他方法到另一個類

這是我的源極文件: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 

秒源文件: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 

我怎樣才能調用方法INIT和infoKaryawan類cobaa上文件9_turunan進階ance.py

我已經把from percobaan.Karyawan import __init__的文件:9_turunan提前和錯了,我不知道哪裏是我的源

我在這裏的目錄內在張力結構的問題 directory structure

+1

你不應該把空格放在你的python文件或包名中 –

+0

嗯,我是python mate的新手..你能告訴我爲什麼我不應該把空間放在我的文件/包上嗎? 因爲我的IDE(pyCharm社區)它支持把空間,然後我嘗試... 和1更多的東西,爲什麼空間(4線以上的空間類聲明)其影響, 沒有廢話我只是問我的經驗伴侶:) – jethow

+0

空間導入時會導致問題。我不是在討論文件內容的間隔。這只是Python風格的指導方針稱爲PEP 8 –

回答

1

你壓痕關你們班。它應如下所示:

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 

然後,在你的其他的文件,只需要導入它是這樣:from filename import Karyawan

祝你好運!

+0

我的身份是隊友,我只知道文件名不能爲數字首字 但感謝**文件名進口Karyawan ** 它的權利:) – jethow

+0

好的,不用擔心。在你的問題中你的格式確實讓我失望,因爲它可能會導致你所問的條件。儘管如此,很高興它解決了。 – Carlos

+0

非常感謝配偶:) – jethow