ส่งคืนค่าหลายค่าจากฟังก์ชัน Python

Return Multiple Values From Python Function



ฟังก์ชันนี้ใช้ในภาษาการเขียนโปรแกรมใดๆ เพื่อเรียกใช้บล็อกเฉพาะของโค้ดหลายครั้งเมื่อต้องการและจัดระเบียบโค้ดอย่างเหมาะสม บางครั้ง จำเป็นต้องอ่านค่าส่งคืนจากฟังก์ชันเพื่อวัตถุประสงค์ในการเขียนโปรแกรม ค่าส่งคืนของฟังก์ชันถูกเก็บไว้ในตัวแปร ฟังก์ชัน Python สามารถคืนค่าได้ทั้งค่าเดียวและหลายค่า บทช่วยสอนนี้แสดงวิธีการคืนค่าหลายค่าจากฟังก์ชัน Python ที่มีตัวแปร วัตถุ ทูเปิล รายการ และพจนานุกรมหลายรายการ

ตัวอย่างที่ 1: ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้หลายตัวแปร

หากคุณต้องการส่งคืนตัวแปรเพียงไม่กี่ตัวจากฟังก์ชัน Python จะเป็นการดีกว่าที่จะกำหนดตัวแปรเหล่านี้เพื่อเก็บค่าที่ส่งกลับหลายค่าจากตัวแปร ออบเจ็กต์ ทูเพิล รายการ และพจนานุกรมหลายรายการโดยใช้ฟังก์ชันนี้ ในตัวอย่างนี้ มีการประกาศตัวแปรสามตัวในสคริปต์เพื่อเก็บค่าส่งคืนสามค่า NS multiVarFunc() ฟังก์ชันใช้รับค่าอินพุตสามค่าและส่งกลับค่าให้กับตัวแปร dept_name, total_std และ total_fac .







#!/usr/bin/env python3

# กำหนดฟังก์ชันเพื่อส่งคืนหลายตัวแปร
defmultiVarFunc():
# รับข้อมูลสตริง
แผนก= ป้อนข้อมูล('ป้อนชื่อแผนก: ')
# นำข้อมูลตัวเลข
มาตรฐาน= int(ป้อนข้อมูล('ระบุจำนวนนักเรียนทั้งหมด: '))
# นำข้อมูลตัวเลข
แฟคนั่ม= int(ป้อนข้อมูล('ป้อนจำนวนคณะทั้งหมด: '))
# ส่งกลับหลายตัวแปร
กลับแผนก,มาตรฐาน,แฟคนั่ม;

# เรียกใช้ฟังก์ชันและเก็บค่าส่งคืนในสามตัวแปร
dept_name,total_std,total_fac=multiVarFunc()
# พิมพ์ผลลัพธ์ที่จัดรูปแบบของค่าส่งคืน
พิมพ์('NSแผนก:%sNSนักเรียนทั้งหมด:%dNSรวมคณะ:%d'%(dept_name,total_std,
total_fac))

เอาท์พุต



ค่าสามค่าจะถูกนำไปใช้เป็นอินพุต และค่าเอาต์พุตจะถูกพิมพ์หลังจากการจัดรูปแบบ







ตัวอย่างที่ 2: ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้ tuple

สคริปต์ต่อไปนี้แสดงวิธีใช้ทูเพิลเพื่อคืนค่าหลายค่าจากฟังก์ชัน หากคุณต้องการคืนค่าหลายค่าจากฟังก์ชัน นี่เป็นตัวเลือกที่ดีกว่า ที่นี่ ทูเพิลFunc() ฟังก์ชันใช้เพื่อดึงค่าอินพุตสี่ค่าจากผู้ใช้และส่งกลับค่าเป็นทูเพิลไปยังผู้โทร ค่าที่ส่งคืนจะถูกเก็บไว้ในตัวแปรทูเพิลที่ชื่อ tupleVar และค่าจะถูกพิมพ์ในภายหลัง

#!/usr/bin/env python3

# กำหนดฟังก์ชันเพื่อส่งคืนหลายตัวแปร
deftupleFunc():
# รับข้อมูลสตริง
stdID= ป้อนข้อมูล('ป้อนรหัสนักเรียน:')
# รับข้อมูลสตริง
stdName= ป้อนข้อมูล('ป้อนชื่อนักเรียน:')
# นำข้อมูลจำนวนเต็ม
stdBatch= int(ป้อนข้อมูล('ป้อนหมายเลขชุด:'))
# รับข้อมูลลอยตัว
stdCGPA= ลอย(ป้อนข้อมูล('ป้อน CGPA:'))
# ส่งกลับหลายตัวแปรเป็นทูเพิล
กลับ (stdID,stdName,stdBatch,stdCGPA)

# เรียกใช้ฟังก์ชันและเก็บค่าส่งคืนใน tuple
tupleVar=tupleFunc()
# พิมพ์เอาต์พุตที่จัดรูปแบบของ tuple
พิมพ์('NSรหัส:%sNSชื่อ:%sNSแบทช์:%dNSCGPA: %4.2f'%(tupleVar[0],tupleVar[1],tupleVar[2],
tupleVar[3]))

เอาท์พุต



ค่าอินพุตสี่ค่าจะถูกนำไปใช้ในขณะที่พิมพ์ค่าอินพุตและเอาต์พุตที่จัดรูปแบบแล้ว

ตัวอย่างที่ 3: ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้ list

สคริปต์ต่อไปนี้แสดงวิธีใช้รายการเพื่อคืนค่าหลายค่าจากฟังก์ชัน นี่เป็นอีกตัวเลือกหนึ่งในการคืนค่าจำนวนมากจากฟังก์ชัน NS รายการฟังก์ชัน () ฟังก์ชันใช้ในสคริปต์เพื่อนำตัวเลขจำนวนเต็มสองตัวจากผู้ใช้มาคำนวณการบวก การลบ การคูณ และการหารของตัวเลขเหล่านี้ ถัดไป ผลลัพธ์ทั้งสี่นี้จะถูกส่งกลับเป็นรายการจากฟังก์ชัน รายการตัวแปร รายการVar ใช้สำหรับเก็บค่าส่งคืนและพิมพ์ค่า

#!/usr/bin/env python3

# กำหนดฟังก์ชันเพื่อคืนค่าหลายค่าเป็นรายการ
defรายการFunc():
# นำข้อมูลตัวเลข
หมายเลข1= ลอย(ป้อนข้อมูล('ป้อนหมายเลขใดก็ได้:'))
# นำข้อมูลตัวเลข
หมายเลข2= ลอย(ป้อนข้อมูล('ป้อนหมายเลขใดก็ได้:'))

ส่วนที่เพิ่มเข้าไป=เบอร์1 + เบอร์2
การลบ=หมายเลข 1 - หมายเลข 2
การคูณ=หมายเลข 1 * หมายเลข 2
แผนก=หมายเลข 1 / หมายเลข 2

# ส่งกลับหลายตัวแปรเป็นรายการ
กลับ [หมายเลข1,หมายเลข2,ส่วนที่เพิ่มเข้าไป,การลบ,การคูณ,แผนก]

# เรียกใช้ฟังก์ชันและเก็บค่าส่งคืนใน tuple
รายการVar=รายการFunc()
# พิมพ์ผลลัพธ์ที่จัดรูปแบบของข้อมูลรายการ
พิมพ์('NS%5.2f + %5.2f = %5.2f'%(รายการVar[0],รายการVar[1],รายการVar[2]))
พิมพ์('%5.2f - %5.2f = %5.2f'%(รายการVar[0],รายการVar[1],รายการVar[3]))
พิมพ์('%5.2f x %5.2f = %5.2f'%(รายการVar[0],รายการVar[1],รายการVar[4]))
พิมพ์('%5.2f / %5.2f = %5.2f'%(รายการVar[0],รายการVar[1],รายการVar[5]))

เอาท์พุต

หลังจากเอาสองตัวเลข 67 และ 23.7 ผลลัพธ์ต่อไปนี้จะปรากฏขึ้น

ตัวอย่างที่ 4: ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้พจนานุกรม

สคริปต์ต่อไปนี้แสดงวิธีใช้พจนานุกรมเพื่อคืนค่าหลายค่าจากฟังก์ชัน นี่เป็นอีกตัวเลือกหนึ่งในการคืนค่าจำนวนมากจากฟังก์ชัน ตัวแปรวัตถุพจนานุกรมชื่อ dictVar ถูกประกาศไว้ภายในฟังก์ชัน สามค่าถูกกำหนดให้กับตัวแปรและส่งกลับ dicVar ให้กับผู้โทร ถัดไป ค่าพจนานุกรมจะถูกพิมพ์

#!/usr/bin/env python3
# กำหนดฟังก์ชันเพื่อคืนค่าหลายค่าเป็นพจนานุกรม
defdictFunc():
# ประกาศตัวแปรพจนานุกรม
dictVar= dict();
# กำหนดค่าบางอย่าง
dictVar['ชื่อ'] = 'เคลลี่ อาลี'
dictVar['อายุ'] = 46
dictVar['วิชาชีพ'] = 'นักร้อง'
# คืนพจนานุกรมเป็นค่าส่งคืน
กลับdictVar

# เรียกใช้ฟังก์ชันและเก็บค่าส่งคืนในตัวแปรพจนานุกรม
dictValues=dictFunc()
# พิมพ์ค่าพจนานุกรม
พิมพ์('คุณค่าของพจนานุกรมคือ:NS',dictValues)

เอาท์พุต

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์

ตัวอย่างที่ 5: ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้ object

คลาสใช้กับฟังก์ชันเพื่อคืนค่าหลายค่าเป็นวัตถุจากฟังก์ชันในสคริปต์ต่อไปนี้ เมื่อ objFunc () การเรียกใช้ฟังก์ชัน ฟังก์ชันเริ่มต้นวัตถุจาก พนักงาน คลาสและส่งคืนวัตถุไปยังผู้โทร ถัดไป ค่าคุณสมบัติของวัตถุจะถูกพิมพ์

#!/usr/bin/env python3

# กำหนดคลาสเพื่อทำให้วัตถุเบื้องต้น
ระดับพนักงาน:
def __ในนั้น__(ตัวเอง):
ตัวเอง.ชื่อ = 'โมซารอฟ คาริม'
ตัวเอง.โพสต์ = 'ผู้จัดการ'
ตัวเอง.เงินเดือน = 50,000

# กำหนดฟังก์ชันเพื่อคืนค่าเป็นวัตถุ
defobjFunc():
กลับพนักงาน()

# เรียกใช้ฟังก์ชันเพื่อตั้งค่าตัวแปรอ็อบเจ็กต์
objVar=objFunc()

# พิมพ์เอาต์พุตที่จัดรูปแบบ
พิมพ์('NSชื่อพนักงาน:',objVar.ชื่อ,'NS','โพสต์:',objVar.โพสต์,'NS','เงินเดือน:',
objVar.เงินเดือน)

เอาท์พุต

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันสคริปต์

บทสรุป

ค่าส่งคืนหลายค่าจากฟังก์ชันสามารถใช้ในสคริปต์เพื่อวัตถุประสงค์ต่างๆ บทช่วยสอนนี้แสดงวิธีต่างๆ ในการคืนค่าหลายค่าจากฟังก์ชันใน Python

ดูวิดีโอของผู้แต่ง: ที่นี่