Ing C, bali sawetara nilai bali saka fungsi cukup tedious, nanging ing Python, iku gampang banget kanggo nindakake.
Bali dipisahake karo koma
Ing Python, sampeyan mung bisa ngasilake dhaptar strings utawa nomer sing dipisahake koma.
Contone, nemtokake fungsi sing mung ngasilake senar lan nomer minangka kapacak ing ngisor iki, karo saben dipisahake dening koma sawise bali.
def test(): return 'abc', 100
Ing Python, nilai sing dipisahake koma dianggep minangka tuple tanpa tanda kurung, kajaba yen perlu sacara sintaksis. Mulane, fungsi ing conto ing ndhuwur bakal ngasilake tuple kanthi saben nilai minangka unsur.
Koma sing nggawe tuple, dudu tanda kurung bunder. Kurung bunder bisa diilangi, kajaba ing kasus tuple kosong utawa yen perlu kanggo ngindhari ambiguitas sintaksis.
Built-in Types — Python 3.10.0 Documentation
Jinis nilai bali iku tuple a.
result = test() print(result) print(type(result)) # ('abc', 100) # <class 'tuple'>
Saben unsur bakal saka jinis ditetepake dening fungsi.
print(result[0]) print(type(result[0])) # abc # <class 'str'> print(result[1]) print(type(result[1])) # 100 # <class 'int'>
Kesalahan yen sampeyan nemtokake indeks sing ngluwihi jumlah nilai bali sing ditetepake.
# print(result[2]) # IndexError: tuple index out of range
Bisa unpacked lan sawetara nilai bali bisa diutus kanggo variabel kapisah.
a, b = test() print(a) # abc print(b) # 100
Padha ditrapake yen sampeyan pengin nemtokake telu utawa luwih nilai bali tinimbang mung loro.
def test2(): return 'abc', 100, [0, 1, 2] a, b, c = test2() print(a) # abc print(b) # 100 print(c) # [0, 1, 2]
Ngasilake dhaptar.
[]
Yen sampeyan nutupi karo iki, nilai bali bakal dadi dhaptar tinimbang tuple.
def test_list(): return ['abc', 100] result = test_list() print(result) print(type(result)) # ['abc', 100] # <class 'list'>