[Python for Beginner] EP.8 : Python User Defined Function

[Python for Beginner]  EP.8 : Python User Defined Function

สวัสดีครับ หลังจากที่ตอนที่แล้วเราพูดถึงเรื่อง Work with files กันไป วันนี้ Python for Beginner EP.8 : Python User Defined Function ในสัปดาห์นี้เราจะมาพูดถึง รูปแบบการเขียนโปรแกรม เพื่อช่วยทำให้โค้ดของเราดูง่ายขึ้น เข้าใจง่ายขึ้นครับ มีชื่อว่า user defined function (udf) นั่นเอง

number1 = 1
number2 = 2

def plus(number1, number2):
return number1+number2

result = plus(number1, number2)
print(result)

จะเห็นได้ว่า ชุดคำสั่ง code block ตัวหนา เป็นวิธีการประกาศ function โดยจะขึ้นต้นด้วย def ตามด้วยชื่อ ที่ต้องการ ดังตัวอย่างข้างบน ผมประกาศ function ชื่อ plus รับ input parameter 2 ตัวคือ number1 และ number2 จากนั้น มีคำว่า return number1+number2 หมายถึงให้เอาผลรวมของตัวแปรทั้งสอง แสดงผลลัพธ์ออกมา จากนั้นจะเห็นว่าตอนเรียกใช้ จะใช้ชื่อ function และเอาผลลัพธ์มาแสดงที่ result และ แสดงออกมานะครับ

โดยที่ควรจะสร้าง function ก่อนที่จะเรียกใช้นะครับ แต่ถ้าต้องการอยากสร้าง function ไว้ส่วนอื่นๆ ในไฟล์ ควรเขียนดังนี้

number1 = 1
number2 = 2

def main():
print(plus(number1, number2))

def plus(number1, number2):
return number1+number2

if __name__ == ‘__main__’:
main()

ในตัวอย่างนี้ จะเห็นว่า เราใช้ ประโยคว่า if __name == ‘__main__’ เพื่อบอกว่า การเริ่มต้นการทำงานทั้งหมดจะเริ่มที่ function main() ซึ่งรูปแบบการเขียนแบบนี้จะทำให้เราเห็น code block แบ่งเป็นส่วนๆ ทำให้ง่ายต่อการจัดการ และการต่อการนำกลับมาใช้ใหม่ได้ง่ายขึ้นครับ

หวังว่าใน ตย.​จะพอทำให้เห็นภาพมากขึ้นนะครับ ยังไงฝากติดตาม และแบ่งปันด้วยด้วยนะครับผม ขอบคุณครับ

ตัวอย่างเพิ่มเติม

Happy Coding ^_^

Recent Posts

SQL Database Deployment Model

Microsoft Azure SQL Database [Deployment Model]

Deployment Model   เป็นบริการในรูปแบบPlatform as a Serviceของระบบฐานข้อมูลDatabaseบนโครงสร้างของMicrosoft AzureโดยมีDeployment Options ดังต่อไปนี้ 

Read More »
Microsoft App Serviceคืออะไร?

Microsoft Azure App Service คืออะไร?

Azure App Service เป็นอีกหนึ่งในบริการยอดนิยมของ Microsoft ที่ถูกใช้บริการมากที่สุด บริการนี้มีเครื่องมือที่จำเป็นเเละตอบโจทย์เป็นอย่างมากสำหรับ Developer ที่ต้องการมุ่งเน้นเเละให้ความสำคัญไปกับการพัฒนา Application

Read More »