Bir Python İşlevinden Birden Çok Değer Döndürme

Return Multiple Values From Python Function



İşlev, herhangi bir programlama dilinde, belirli bir kod bloğunu gerektiğinde birden çok kez çalıştırmak ve kodu uygun şekilde düzenlemek için kullanılır. Bazen bu, programlama amaçları için işlevden dönüş değerinin okunmasını gerektirir. Fonksiyonun dönüş değeri bir değişkende saklanır. Python işlevleri hem tekli hem de çoklu değerler döndürebilir. Bu öğretici, birden çok değişken, nesne, tanımlama grubu, liste ve sözlük içeren Python işlevlerinden birden çok değerin nasıl döndürülebileceğini gösterir.

Örnek 1: Birden çok değişken kullanarak işlevden birden çok değer döndürün

Python işlevinden yalnızca birkaç değişken döndürmek istiyorsanız, işlevi kullanarak birden çok değişken, nesne, demet, liste ve sözlükten birden çok dönüş değerini depolamak için bu değişkenleri tanımlamak daha iyidir. Bu örnekte, komut dosyasında üç dönüş değerini depolamak için üç değişken bildirilmiştir. NS multiVarFunc() işlevi, üç giriş değeri almak ve değerleri değişkenlere döndürmek için kullanılır. dept_name, toplam_std ve toplam_fac .







#!/usr/bin/env python3

# Birden çok değişken döndürmek için işlev tanımlayın
tanımmultiVarFunc():
# Bir dizi verisi alın
borç= giriş('Bölüm adını girin:')
# Sayısal bir veri alın
standart numara= int(giriş('Toplam öğrenci sayısını girin:'))
# Sayısal bir veri alın
facnum= int(giriş('Toplam fakülte sayısını girin:'))
# Birden çok değişken döndür
dönüşborç,standart numara,facnum;

# Fonksiyonu çağırın ve dönüş değerlerini üç değişkende saklayın
dept_name,toplam_std,toplam_fac=multiVarFunc()
# Dönüş değerlerinin biçimlendirilmiş çıktısını yazdırın
Yazdır(' Departman:%s Toplam öğrenci:%d Toplam fakülte:%d'%(dept_name,toplam_std,
toplam_fac))

Çıktı



Girdi olarak üç değer alınır ve formatlamadan sonra çıktı değerleri yazdırılır.







Örnek 2: Tuple'ı kullanarak işlevden birden çok değer döndürün

Aşağıdaki komut dosyası, bir işlevden birden çok değer döndürmek için bir tanımlama grubunun nasıl kullanılacağını gösterir. İşlevden çok sayıda değer döndürmek istiyorsanız, bu daha iyi bir seçenektir. Burada, tupleFunc() işlevi, kullanıcıdan dört giriş değeri almak ve değerleri bir demet olarak arayana döndürmek için kullanılır. Dönüş değerleri, adlı bir tuple değişkeninde saklanacaktır. tupleVar ve değerler daha sonra yazdırılacaktır.

#!/usr/bin/env python3

# Birden çok değişken döndürmek için işlev tanımlayın
tanımtupleFunc():
# Bir dizi verisi alın
standart kimlik= giriş('Öğrenci kimliğini girin:')
# Bir dizi verisi alın
standartAdı= giriş('Öğrenci adını girin:')
# Bir tamsayı verisi alın
stdToplu= int(giriş('Parti Numarasını girin:'))
# Bir kayan nokta verisi alın
stdCGPA= batmadan yüzmek(giriş('CGPA'yı girin:'))
# Birden çok değişkeni bir demet olarak döndür
dönüş (standart kimlik,standartAdı,stdToplu,stdCGPA)

# Fonksiyonu çağırın ve dönüş değerlerini bir demet içinde saklayın
tupleVar=tupleFunc()
# Tuple'ın biçimlendirilmiş çıktısını yazdır
Yazdır(' Kimlik:%s Ad:%s Toplu iş:%d CGPA: %4.2f'%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

Çıktı



Dört giriş değeri giriş olarak alınır ve formatlanmış çıkış değerleri daha sonra yazdırılır.

Örnek 3: Listeyi kullanarak fonksiyondan birden çok değer döndürün

Aşağıdaki komut dosyası, bir işlevden birden çok değer döndürmek için bir listenin nasıl kullanılacağını gösterir. Bu, bir fonksiyondan birçok değer döndürmek için başka bir seçenektir. NS listFunc () fonksiyon, komut dosyasında kullanıcıdan iki tam sayı almak ve bu sayıların toplama, çıkarma, çarpma ve bölme işlemlerini hesaplamak için kullanılır. Ardından, bu dört sonuç, işlevden bir liste olarak döndürülür. liste değişkeni, listeVar dönüş değerlerini saklamak ve değerleri yazdırmak için kullanılır.

#!/usr/bin/env python3

# Liste olarak birden çok değer döndürmek için işlev tanımlayın
tanımlisteFunc():
# Sayısal bir veri alın
1 numara= batmadan yüzmek(giriş('Herhangi bir sayı girin:'))
# Sayısal bir veri alın
2 numara= batmadan yüzmek(giriş('Herhangi bir sayı girin:'))

ek=sayı1 + sayı2
çıkarma=sayı1 - sayı2
çarpma işlemi=sayı1 * sayı2
Bölüm=sayı1 / sayı2

# Birden çok değişkeni liste olarak döndür
dönüş [1 numara,2 numara,ek,çıkarma,çarpma işlemi,Bölüm]

# Fonksiyonu çağırın ve dönüş değerlerini bir demet içinde saklayın
listeVar=listeFunc()
# Liste verilerinin biçimlendirilmiş çıktısını yazdırın
Yazdır(' %5.2f + %5.2f = %5.2f'%(listeVar[0],listeVar[1],listeVar[2]))
Yazdır('%5.2f - %5.2f = %5.2f'%(listeVar[0],listeVar[1],listeVar[3]))
Yazdır('%5.2f x %5.2f = %5.2f'%(listeVar[0],listeVar[1],listeVar[4]))
Yazdır('%5.2f / %5.2f = %5.2f'%(listeVar[0],listeVar[1],listeVar[5]))

Çıktı

67 ve 23.7 olmak üzere iki sayıyı aldıktan sonra aşağıdaki çıktı görünecektir.

Örnek 4: Sözlük kullanarak işlevden birden çok değer döndürün

Aşağıdaki komut dosyası, bir işlevden birden çok değer döndürmek için bir sözlüğün nasıl kullanılacağını gösterir. Bu, bir fonksiyondan birçok değer döndürmek için başka bir seçenektir. adlı bir sözlük nesnesi değişkeni dictVar fonksiyon içinde bildirilir. Değişkene üç değer atanır ve dicVar arayan kişiye. Ardından, sözlük değerleri yazdırılır.

#!/usr/bin/env python3
# Birden çok değeri sözlük olarak döndürmek için işlev tanımlayın
tanımdictFunc():
# Bir sözlük değişkeni tanımla
dictVar= dikte();
# Bazı değerler atayın
dictVar['isim'] = 'Kili Ali'
dictVar['yaş'] = 46
dictVar['uzmanlık alanı'] = 'Şarkıcı'
# Sözlüğü dönüş değerleri olarak döndür
dönüşdictVar

# Fonksiyonu çağırın ve dönüş değerlerini bir sözlük değişkeninde saklayın
dictValues=dictFunc()
# Sözlük değerlerini yazdır
Yazdır('Sözlüğün değerleri şunlardır: ',dictValues)

Çıktı

Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir.

Örnek 5: Nesneyi kullanarak işlevden birden çok değer döndürün

Aşağıdaki komut dosyasındaki işlevden bir nesne olarak birden çok değer döndürmek için bir işlevle birlikte bir sınıf kullanılır. Ne zaman nesneFunc () işlev çağrıları, işlev nesneyi Çalışanlar sınıf ve nesneyi arayana döndürür. Ardından, nesnenin özellik değerleri yazdırılacaktır.

#!/usr/bin/env python3

# Nesneyi başlatmak için sınıfı tanımlayın
sınıfÇalışanlar:
tanım __içinde__(öz):
öz.isim = 'Mosarof Kerim'
öz.İleti = 'Yönetici'
öz.aylık maaş = 50.000

# Değerleri nesne olarak döndürecek işlevi tanımlayın
tanımnesneFunc():
dönüşÇalışanlar()

# Nesne değişkenini ayarlamak için işlevi çağırın
objVar=nesneFunc()

# Biçimlendirilmiş çıktıyı yazdır
Yazdır(' İşçi adı:',objVar.isim,' ','Postalamak:',objVar.İleti,' ','Aylık maaş:',
objVar.aylık maaş)

Çıktı

Komut dosyasını çalıştırdıktan sonra aşağıdaki çıktı görünecektir.

Çözüm

Bir işlevden gelen birden çok dönüş değeri, komut dosyasında çeşitli amaçlar için kullanılabilir. Bu öğretici, Python'daki bir işlevden birden çok değer döndürmenin farklı yollarından bazılarını gösterdi.

Yazarın videosunu izleyin: Burada