การสร้างฟังก์ชั่นโดยกำหนดค่าเริ่มต้นให้กับ 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 ให้กับ ฟังก์ชั่นไม่ครบ

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
B - ใบเสร็จรับเงิน
โดย mindphp พฤ 24 พฤษภาคม 2018 2:38 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
1
พฤ 24 พฤษภาคม 2018 2:38 am โดย mindphp
วิธีติดตั้ง Netbeans8.2 บน Ubuntu
โดย AePongsak พ 23 พฤษภาคม 2018 4:48 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
7
พ 23 พฤษภาคม 2018 4:48 pm โดย AePongsak
สอบถามการติดตั้ง LAMP Server บน Ubuntu 18.04 ด้วยครับ
โดย AePongsak พ 23 พฤษภาคม 2018 3:54 pm บอร์ด SQL - Database
2
18
พ 23 พฤษภาคม 2018 6:52 pm โดย AePongsak
งานประจำวันที่ 23 พฤษภาคม 2561
โดย Rujikon พ 23 พฤษภาคม 2018 2:38 pm บอร์ด M060 - นายรุจิกร พงษ์พิละ
1
4
พ 23 พฤษภาคม 2018 7:01 pm โดย Rujikon
อัพเดทด่วน Joomla เวอร์ชั่น 3.8.8 ปรับปรุงเรื่องความปลอดภัยและแก้ไขข้อผิดพลาดต่างๆ
โดย tsukasaz พ 23 พฤษภาคม 2018 11:40 am บอร์ด PHP News
0
16
พ 23 พฤษภาคม 2018 11:40 am โดย tsukasaz
งานประจำวันที่ 23 พฤษภาคม 2561
โดย rangsan พ 23 พฤษภาคม 2018 9:56 am บอร์ด M058 - รังสรรค์ มุ่งกลาง
1
4
พ 23 พฤษภาคม 2018 7:09 pm โดย rangsan
[ปัญหา] การอัพไฟล์ขึ้น Git ไมสามารถอัพได้
โดย rangsan พ 23 พฤษภาคม 2018 9:53 am บอร์ด Mindphp Task (ทดลองงาน)
0
1
พ 23 พฤษภาคม 2018 9:53 am โดย rangsan
งานประจำวันที่ 23 พฤษภาคม 2561
โดย Parichat พ 23 พฤษภาคม 2018 9:27 am บอร์ด M061 - ปาริชาติ รัตโณภาส
1
3
พ 23 พฤษภาคม 2018 7:33 pm โดย Parichat
B - Admin + Financial Manager ไม่เห็นเมนูตั้งค่า
โดย thatsawan อ 22 พฤษภาคม 2018 11:30 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
3
8
พ 23 พฤษภาคม 2018 4:21 pm โดย thatsawan
B - Print inv ที่อยู่ ไม่ขึ้น ชื่อสาขา เป็นอังกฤษ
โดย mindphp อ 22 พฤษภาคม 2018 9:07 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
2
6
อ 22 พฤษภาคม 2018 9:14 pm โดย mindphp
ขอสอบถามเกี่ยวกับ Google sheet ครับ
โดย toonytoony2004 อ 22 พฤษภาคม 2018 8:07 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
12
อ 22 พฤษภาคม 2018 8:07 pm โดย toonytoony2004
วิธีการทำ Menu Button บน Toolbar เพื่อใช้ในการตั้งค่าต่าง ๆ
โดย rangsan อ 22 พฤษภาคม 2018 7:03 pm บอร์ด Mobile Application Developing- Android, iOS
0
9
อ 22 พฤษภาคม 2018 7:03 pm โดย rangsan
วิธีการในการสร้าง Magic Button Android Studio
โดย rangsan อ 22 พฤษภาคม 2018 6:37 pm บอร์ด Mobile Application Developing- Android, iOS
0
7
อ 22 พฤษภาคม 2018 6:37 pm โดย rangsan
งานประจำวันที่ 22 พฤษภาคม 2561
โดย Rujikon อ 22 พฤษภาคม 2018 10:37 am บอร์ด M060 - นายรุจิกร พงษ์พิละ
1
7
อ 22 พฤษภาคม 2018 7:32 pm โดย Rujikon
งานประจำวันที่ 22 พฤษภาคม 2561
โดย rangsan อ 22 พฤษภาคม 2018 9:47 am บอร์ด M058 - รังสรรค์ มุ่งกลาง
1
11
อ 22 พฤษภาคม 2018 7:11 pm โดย rangsan
งานประจำวันที่ 22 พฤษภาคม 2561
โดย Parichat อ 22 พฤษภาคม 2018 9:36 am บอร์ด M061 - ปาริชาติ รัตโณภาส
1
5
อ 22 พฤษภาคม 2018 7:18 pm โดย Parichat
โน๊ตช่วยจำของ M061
โดย Parichat จ 21 พฤษภาคม 2018 11:50 pm บอร์ด M061 - ปาริชาติ รัตโณภาส
1
1
จ 21 พฤษภาคม 2018 11:52 pm โดย Parichat
งานประจำวันที่ 21 พฤษภาคม 2561
โดย Parichat จ 21 พฤษภาคม 2018 6:53 pm บอร์ด M061 - ปาริชาติ รัตโณภาส
3
8
จ 21 พฤษภาคม 2018 11:57 pm โดย Parichat
Re - R ทำปิดบัญเขียนด้วย IDE Test เป็น webdriver
โดย rangsan จ 21 พฤษภาคม 2018 7:02 pm บอร์ด M058 - รังสรรค์ มุ่งกลาง
0
5
จ 21 พฤษภาคม 2018 7:02 pm โดย rangsan
แนะนำฟีดเจอการทำงานของระบบ OpenERP
โดย Rujikon จ 21 พฤษภาคม 2018 7:01 pm บอร์ด M060 - นายรุจิกร พงษ์พิละ
0
2
จ 21 พฤษภาคม 2018 7:01 pm โดย Rujikon