การสร้างฟังก์ชั่นโดยกำหนดค่าเริ่มต้นให้กับ Argument การสร้างฟังก์ชั่นในไพทอน นอกจากจะกำหนด Argument ได้แล้ว เรายังสามารถกำหนดค่าเริ่มต้นให้กับ Argument ได้อีกด้วย ซึ่งจะเหมือนกับภาษาอื่นๆ
ตัวอย่าง def_function_default_value.py


i = 5
def f(j, arg="Mindphp.com"):
    print(arg);
    print(j);
i = 6
f(i)
f(i, "สวัสดี")


จากตัวอย่างผลที่ได้
Mindphp.com
6
สวัสดี
6

จากตัวอย่างเป็นการสร้างฟังก์ชั่นชื่อ f มี Argument สองตัวคือ i และ arg ซึ่ง arg มีการกำหนดค่าเริ่มต้นไว้ด้วย (เรียกว่า Default value) โดยปกติแล้ว ถ้าเราสร้างฟังก์ชั่น แล้วกำหนด Argument ไว้กี่ตัว เวลาเรียกใช้ ฟังก์ชั่นนั้นก็ ต้องใส่ Argument ให้เท่ากับ ตอนที่เราสร้าง แต่บ้างครั้งเราไม่อยากใช้ฟังก์ชั่นแล้วต้องใส่ Argument ลงไปให้ครบตามจำนวน เราก็ต้องสร้างฟังก์ชั่นไว้ตามตัวอย่างนี้คือกำหนด Default value ให้กับ Argument ตามตัวอย่าง
มีการเรียกใช้ ฟังก์ชั่น f สองครั้ง ครั้งแรกไม่ได้กำหนดค่า ให้กับ arg แต่โปรแกรมก็สามารถทำงานต่อได้ เพราะตอนเสร้างฟังก์ชั่นเราได้กำหนด Default value ไว้นั่นเอง

หมายเหตุถ้าเจอ ERROR
TypeError: f() takes at least 1 argument (0 given)
หมายความว่า กำหนด Argument ให้กับ ฟังก์ชั่นไม่ครบ

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ติดตั้งJoomla ไม่ได้ค่ะ
โดย Anonymous อ 23 ก.ย. 2018 5:21 pm บอร์ด Joomla Development
1
7
อ 23 ก.ย. 2018 5:30 pm โดย mindphp
Q - ถามเรื่องการ UPDATE INSERT ข้อมูล sql server ครับ ว่าแบบ Function กับ แบบทั่วไป แบบไหนปลอดภัยกว่า
โดย nuattawoot อ 23 ก.ย. 2018 3:48 pm บอร์ด SQL - Database
0
13
อ 23 ก.ย. 2018 3:48 pm โดย nuattawoot
อยากได้คนช่วยทำ app mobile ด่วน
โดย Pongpat Rakdej อ 23 ก.ย. 2018 10:05 am บอร์ด Mobile Programming - Android, iOS, Window Phone
1
12
อ 23 ก.ย. 2018 4:29 pm โดย mindphp
การเชื่อม Pgadmin III กับ SSL Certificate ให้กับ Website ผ่าน DirectAdmin อย่างไร
โดย kkeinezung ส 22 ก.ย. 2018 6:54 pm บอร์ด SQL - Database
3
28
อ 23 ก.ย. 2018 5:32 pm โดย mindphp
R - phpBB
โดย Ittichai_chupol ส 22 ก.ย. 2018 6:51 pm บอร์ด M070 - อิทธิชัย ชูผล
0
4
ส 22 ก.ย. 2018 6:51 pm โดย Ittichai_chupol
เขาวัง สิ่งคู่บ้านเพชรบุรี
โดย Ittichai_chupol ส 22 ก.ย. 2018 3:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
ส 22 ก.ย. 2018 3:52 pm โดย Ittichai_chupol
งานประจำวันที่ 22 กันยายน 2561
โดย muneela ส 22 ก.ย. 2018 10:38 am บอร์ด M068 - มุนีลา หมัดบาซา
2
9
จ 24 ก.ย. 2018 9:30 am โดย thatsawan
งานประจำวันที่ 22 กันยายน 2561
โดย tatiya ส 22 ก.ย. 2018 10:02 am บอร์ด M065 - ตติยะ นาชัย
1
4
ส 22 ก.ย. 2018 7:45 pm โดย tatiya
งานประจำวันที่ 22 มิถุนายน 2561
โดย Ittichai_chupol ส 22 ก.ย. 2018 9:50 am บอร์ด M070 - อิทธิชัย ชูผล
1
9
ส 22 ก.ย. 2018 7:16 pm โดย Ittichai_chupol
R-mdsoft_purchases_order_print
โดย tatiya ศ 21 ก.ย. 2018 7:02 pm บอร์ด M065 - ตติยะ นาชัย
1
9
ส 22 ก.ย. 2018 7:05 pm โดย tatiya
Logo ThailandHotel
โดย tai14 ศ 21 ก.ย. 2018 3:53 pm บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
0
6
ศ 21 ก.ย. 2018 3:53 pm โดย tai14
Thaivi Web Upgrade List
โดย mindphp ศ 21 ก.ย. 2018 1:55 pm บอร์ด phpBB3 Project
2
5
ส 22 ก.ย. 2018 5:10 pm โดย thatsawan
R - mdsoft_ziri_invoice_print - ใบอินวอยซ์ (MT24)
โดย prakon ศ 21 ก.ย. 2018 10:15 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
11
ศ 21 ก.ย. 2018 7:05 pm โดย prakon
งานประจำวันที่ 21 กันยายน 2561
โดย prakon ศ 21 ก.ย. 2018 9:44 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
17
ศ 21 ก.ย. 2018 9:46 am โดย prakon
งานประจำวันที่ 21 กันยายน 2561
โดย Ittichai_chupol ศ 21 ก.ย. 2018 9:44 am บอร์ด M070 - อิทธิชัย ชูผล
1
13
ศ 21 ก.ย. 2018 6:29 pm โดย Ittichai_chupol
งานประจำวันที่ 21 กันยายน 2561
โดย muneela ศ 21 ก.ย. 2018 9:37 am บอร์ด M068 - มุนีลา หมัดบาซา
1
14
ศ 21 ก.ย. 2018 6:26 pm โดย muneela
งานประจำวันที่ 21 กันยายน 2561
โดย tatiya ศ 21 ก.ย. 2018 9:35 am บอร์ด M065 - ตติยะ นาชัย
1
8
ส 22 ก.ย. 2018 7:17 pm โดย tatiya
งานประจำวันที่ 21 กันยายน 2561
โดย pprn ศ 21 ก.ย. 2018 9:17 am บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
8
ศ 21 ก.ย. 2018 6:12 pm โดย pprn
งานประจำวันที่ 21 กันยายน 2561
โดย tai14 ศ 21 ก.ย. 2018 9:11 am บอร์ด MT26 - นางสาวอัครยุภา ยงยุทธ
1
6
ศ 21 ก.ย. 2018 6:18 pm โดย tai14
R - mod_jshopping_products_reviews โมดูลการรีวิวสินค้า
โดย pprn พฤ 20 ก.ย. 2018 6:58 pm บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
2
9
ศ 21 ก.ย. 2018 6:12 pm โดย pprn