Page 57 - python
P. 57
31
รูปแบบการสรางฟงกชั่น:
def ชื่อฟงกชั่น():
คําสั่ง.....
return ผลลัพธ
ตัวอยางที่ 3.1 การสรางฟงกชั่น adder
def adder(a, b):
return a+b
c = adder(3,2)
d = adder(adder(1,1), adder(2,2))
print("ตัวแปร c มีคา %d"%c)
print("ตัวแปร d มีคา %d"%d)
ผลลัพธ :
ตัวแปร c มีคา 5
ตัวแปร d มีคา 6
ตัวอยางที่ 3.1 เปนการสรางฟงกชั่นชื่อ adder() มีคาที่สงเขาไปใหฟงกชั่นหรืออารกิวเมนต 2 ตัว
คือ a และ b ภายในฟงกชั่นมีคําสั่ง return a+b เมื่อเรียกใชคําสั่ง c = adder(3,2) เลข 3 คืออารกิวเมนต
a และเลข 2 คืออารกวเมนต b ผลลัพธจะแสดงคําวา "ตัวแปร c มีคา 5" จากนั้นตัวแปร d เรียกฟงกชั่น
ิ
ิ
ั
ั
adder(adder(1,1), adder(2,2)) ใหพจารณา adder(1,1) มีคาเทากบเลข 2 และ adder(2,2) เทากบ 4
ื
ิ
และจะถอวาเลข 2 และ 4 เปนอารกวเมนตของฟงกชั่น adder(2,4) ซึ่ง คือ 6 ดังนั้น ผลลัพธในลําดับ
ตอมาแสดงผลคําวา "ตัวแปร d มีคา 6"
3.3 การสรางฟงกชนดวยคําสัง lambda
่
ั
่
ี
การสรางฟงกชั่นดวยคําสั่ง lambda เปนฟงกชั่นที่ไมมชื่อ เรียกวา แอนโนนีมัสฟงกชั่นมีขอดีคือ
สามารถสรางฟงกชั่นขึ้นมาไดในขณะที่โปรแกรมกําลังทํางาน (runtime)
ไวยากรณ
lambda arguments : expression
คาพารามิเตอร
พารามิเตอร คําอธิบาย
arguments คือ อารกิวเมนตของฟงกชั่น
expression คือ การดําเนินการและคืนคาของฟงกชั่น
ตัวอยางที่ 3.2 การสรางฟงกชั่นดวยคําสั่ง lambda
adder = lambda a,b : a+b
c = adder(3,2)