(ล่าม) ฮัลโหลครับ ฝั่งล่ามไหมครับ ผม(อาจารย์สุธิรา) ได้ยินค่ะ (ล่าม) โอเคครับ (อาจารย์สุธิรา) สวัสดีค่ะ พี่ล่ามไม่ได้ยินเรานะ(ล่าม) ได้ยินครับ ได้ยินครับ (อาจารย์สุธิรา) ได้ยินไหม ได้ยินนะคะ โอเค นึกว่าไม่ได้ยินนะคะ สำหรับวันนี้นะคะ ในสัปดาห์นี้จะเป็นเรื่องเกี่ยวกับฟังก์ชันใน Pythonเราจะต้องมาเรียนเบื้องต้นนี้ ก็คือต้องมารู้จักสิ่งที่เรียกว่า Function ก่อนนะคะ นะคะ หัวข้อที่เราจะเรียนในสัปาดาห์นี้นะคะ จะเป็นหัวข้อสุดท้ายของปีนี้เทอมนี้นะคะ ภาคเรียนนี้ ก็คือ ฟังก์ชันวันนี้เราจะพูดถึงการนะคะ การเรียกใช้งานแล้วก็พูดถึงDefault Argument Values แล้วก็ Keyword Argumentนะคะ อ้าวทำไมหน้าจอไม่ขึ้นอีกแล้วโอเคนะคะ ก่อนอื่นก่อนจะรู้วิธีการสร้างการเลือกใช้งานนี่ เราก็ต้องรู้ก่อนว่าฟังก์ชันมันคืออะไร นะคะ คือ ถ้าพูดถึงโดยทั่วไปนะคะ ก็คือถ้าเราเป็นโปรแกรมเมอร์ หรือในวิธีการเขียนโปรแกรมคอมพิวเตอร์นี่ ฟังก์ชันมันจะเป็นสั่งพิเศษที่ให้ทำงานเฉพาะสิ่งใดสิ่งหนึ่งนะคะ ซึ่งแต่เดิมนี่ฟังก์ชันมันจะเป็นที่เขาพัฒนาไว้แล้วก็มี แต่ใน Python นะคะ ในส่วนของภาษา pythonฟังก์ชันจะเป็นโค้ด หรือโปรแกรมที่เราสร้างขึ้นได้เองนะคะ เพื่อเอาไปใช้เหมือนตั้งขึ้นมาว่าฟังก์ชันนี้เหมือนบางครั้งนี่ การคำนวณบางอย่างไม่จำเป็นต้องไปเขียนโค้ดใหม่ทุกครั้ง เราก็เลยสร้างฟังก์ชันไว้เลยแล้วไปเรียกฟังก์ชันนี้มา เพื่อให้มันทำกาารคำนวณค่านี้ให้อย่างนี้นะคะ นั่นคือจุดประสงค์จะนำไปใช้ในสิ่งใดสิ่งหนึ่งนะคะ เป็นการเฉพาะ โดยในบอกแล้วว่าในสัปดาห์นี้เราจะสร้างขึ้นมาใช้งานเองนะคะ แล้วเมื่อสร้างเสร็จแล้วนี่จะต้องรู้ว่ามันจะต้องเรียกฟังก์ชันที่เราใช้งานนี้ จะถูกเรียกมาใช้โดยวิธีการใดหรือเรียกใช้อย่างไรนะคะ แล้วก็จะพูดถึง Default Argumentด้วยว่ามันคืออะไร แล้วก็ Keyword Argument ด้วยว่ามันคืออะไร นะคะ ทีนี้ก็จะเริ่มเข้าสู่กระบวนการที่เราจะต้องทำก็คือ เมื่อเราจะทำฟังกชันขึ้นมาเราจะสร้างมันอย่างไรนะคะ การสร้างฟังก์ชันใน Python นะคะ ใน pythonเราสามารถสร้างขึ้นเองได้นะคะ โดยวิธีการนี้นะคะให้นึกถึงว่าเราจะเป็นคนเขียนโค้ดที่บอกแล้วว่ามันสามารถทำงานสิ่งใดสิ่งหนึ่งได้แล้วเอาไปเรียกใช้ซ้ำได้อีกนะคะ จะเรียกว่าการนำโค้ดนี้กลับมาใช้ นี้ว่า Code Reuseใช้ code นี้ซ้ำได้ถ้าจะทำฟังก์ชันมาใช้งาน มันควรเป็นตัวที่เหมือนสามารถเรียกใช้ได้บ่อย ๆ เช่น สมมตินะคะ เราจะหาค่า vat นี่คือ ถ้ามาเขียนโค้ด เราต้องมานั่งเขียนว่า Vat เกิดจากการที่เอา7 เปอร์เซ็นต์น่ะค่ะ Vat ก็คือ 7 เปอร์เซ็นต์ใช่ไหมคะ การที่เอาราคาสินค้ามาคูณกับปริมาณที่ 7 เปอร์เซ็นต์เท่ากับเท่าไหร่ แล้วจะทำอย่างไรเราจะให้รู้ว่าตัวนี้เป็นค่า Vat เราก็อาจจะสร้างฟังก์ชันสำหรับการคิด Vat ขึ้นมาอย่างนี้นะคะ แล้วพอครั้งหน้าจะใช้ก็เอาไปใช้ได้ หรืออย่างอื่น หรือคนอื่นจะเอาไปใช้ได้เมื่อรู้ว่าแต่ต้องรู้ด้วยนะว่ามีฟังก์ชันนี้อยู่ อย่างนี้นะคะ ทีนี้ขั้นตอนในการสร้างนะคะ ก็คือมันจะมีรูปแบบ เราจะต้องเขียนโค้ดนะค่ะ เขียนโค้ดให้ฟังก์ชันเราโดยตามรูปแบบในที่เห็นนะคะ จะต้องมีคำว่า "def"นั่นก็คือการประกาศตัวแปรนะคะ บอกให้รู้ว่านี่นะ ฉันจะประกาศค่า ประกาศฟังก์ชัน ไม่ใช่ประกาศตัวแปร พูดผิดแล้วตามด้วย function_nameเราต้องพิมพ์ def พิมพ์ด้วยตัวเล็กเสมอ ถึงได้ทำเป็นสีแดงให้เห็นว่าคำว่า def นะคะ ตัวเล็กเท่านั้นนะคะ ไม่ใช่พิมพ์ด้วยตัวพิมพ์ใหญ่นึกออกนะนะคะ ก็คือทุกครั้งที่พอจะมีการสร้างฟังก์ชันเราต้องพิมพ์คำว่า defเป็นตัวแรกนะคะ แล้วตามด้วย function_name  function_nameนั่นก็คือชื่อ ของฟังก์ชันที่เราจะไว้เรียกใช้ในครั้งต่อไป เราจะเป็นคนตั้งเองให้นึกถึง fตั้งชื่อให้ตัวแปร แต่อันนี้เป็นการตั้งชื่อฟังก์ชันนี้คือฟังก์ชันอะไรนะคะ เสร็จแล้วก็จะมีวงเล็บ พอใส่คำว่า "def" แล้วก็ใส่ชื่อฟังก์ชันเราต้องต้องพิมพ์วงเล็บเสมอนะคะ แต่ถ้าเราพิมพ์ใน Colab ตัววงเล็บนี้จะขึ้นมานะคะ แล้วส่วนข้างในนี่นะคะ เขาบอกว่ามันเป็นการกำหนดค่า Paramiterพารามิเตอร์ถ้าเป็นเขียนโค้ดปกติ มันก็จะหมายถึงตัวแปรนะคะ แต่ในฟังก์ชันนี่เราจะเรียกว่า "พารามิเตอร์" เพื่อไว้สำหรับอะไรล่ะ เขาเรียกเขาบอกว่าพารามิเตอร์ของฟังก์ชันนี่มีจำนวนเท่าไรก็ได้ คือในฟังก์ชันนี้เราจะมีการเก็บค่าของอะไรบ้าง พารามิเตอร์ตัวนั้นก็จะเป็นตัวเก็บให้เราสมมตินะคะ สมมติเราต้องการคำนวณหาค่าพื้นที่วงกลมอย่างนี้นะคะ ค่าพารามิเตอร์ที่จะเก็บก็อาจจะมีค่าของรัศมีวงกลมหรือมีค่าของอะไรนะเส้นรอบวงอะไรอย่างนี้เข้ามานะคะ นั่นก็คือค่าพารามิเตอร์ที่เราจะไว้เก็บข้อมูลในฟังก์ชันนี้นะคะ เสร็จแล้วเมื่อพิมพ์ function_name ใส่ค่าพารามิเตอร์อะไรเสร็จ เราจะปิดคำสั่งการประกาศฟังก์ชันด้วย ; เสมอนะคะ สังเกตนะคะ เมื่อใดที่ตัวนั้นจะต้องปิดด้วยเสมอ แล้วขึ้นบรรทัดใหม่มันจะเข้าสู่ย่อหน้าใหม่ตัว statements ในที่นี้หมายถึงคำสั่งอื่น ๆ นะคะ แล้วเด็ก ๆ สังเกตดูนะคะ ว่าในการประกาศฟังก์ชันตัวที่ 1นะคะ กับตัวที่ 2 ตัวที่ 2จะมีคำว่า return value ก็คือการคืนส่งค่าคืนกลับซึ่งฟังก์ชันที่เราเขียน อาจจะเขียนแล้วมี return หรือไม่มีก็ได้นะคะ แต่ที่เขียนให้ดูเป็นตัวอย่างนี่ ให้เห็นรูปแบบนี้ให้เห็นทั้ง 2 แบบเป็นแบบที่ไม่มีการ return ค่าแต่แบบที่ 2 นี้ มีการส่งคืนค่ากลับ ก็เลยจะมีคำว่า "return value" ก็คือเราต้องพิมพ์คำว่า return ด้วยตามด้วยค่าที่เราต้องการให้ส่งกลับ เช่น เดี๋ยวดูในตัวอย่างจะเห็นชัดนะคะ เดี๋ยวยกตัวอย่างแล้วจะมองภาพไม่ออก ซึ่งเขาบอกว่าค่าที่ส่งกลับนั้นจะเรียกว่าทีนี้เรามาหฟกหฟดูตัวอย่างแรกก่อนเพื่อจะให้เห็นว่าถ้าเราต้องการประกาศตัวแปรแลลไม่มีการ returnไม่มีคำสั่ง return เพื่อคืนค่านี่ ในตัวอย่างนี้เราจะประกาศตัวแปรชื่อ เห็นไหมคะ ตรง def แล้วตามด้วยhello()def ก็คือ definitionก็คือคำสั่งเพื่อใช้และติดประกาศตัวแปร ประกาศฟังก์ชัน ขอโทษทีนะคะ คือ defแล้วก็ตามด้วย function_name ซึ่งในที่นี้ตั้งชื่อว่าhello นะคะ ฟังก์ชัน hello ก็คือฟังก์ชันที่เราต้องใช้เพื่อแสดงคำทักทายออกมานั่นเองนะคะ แล้วทีนี้ที่เราไว้เก็บค่า ก็คือ name นะคะ เสร็จแล้ว ตามด้วย statement ตามด้วยข้อความหรือคำสั่งหรือโค้ดอะไรก็แล้วแต่นะคะ ซึ่งในทีนี้เราต้องการให้แสดงนะคะ แสดงคำทักทายชื่อที่เรารับค่าเข้าไปนี่ หรือพารามิเตอร์ที่เราส่งเข้าไป ก่อนอื่น เด็ก ๆ เปิด Colab หรือยังคะ เปิด Colab ด้วยไปที่ web browser แล้วเปิดเหมือนเดิมนะคะ พิมพ์คำว่า "Colab" น่ะ co ต้องบอกว่า co สิ Colab lab นะคะ พิมพ์ lab แล้วกด Enter เลยเพราะสังเกตว่าเว็บไหนที่เราเปิดมันจะอัตโนมัติเด็ก ๆ กด Enter ได้เลยมันก็จะเข้ามาหน้าที่เราใช้งานนะ แล้วก็คลิก Code นะคะ ลืมไป อย่าลืมทำอะไรก่อน เข้าสู่ระบบนะนะคะ ของเราให้เรียบร้อยด้วยโอเคนะคะ เสร็จแล้วเราก็เริ่มไปที่เขียน code เหมือนเดิมนะคะ เด็ก ๆ กดที่คำว่า "code" นะคะ ในบรรทัดแรกของเรานะคะ เราก็เริ่มประกาศฟังก์ชัน โดยพิมพ์คำว่าอะไรคะ de แล้วกฌ fใช่ไหมคะ พิมพ์ด้วยตัวพิมพ์เล็กเสมอนะคะ ไม่ใช่พิมพ์ใหญ่แบบนี้นะ ไม่ใช่พิมพ์ D-e-fDef แบบนี้ ตัวใหญ่นี่ถือว่าไม่ถูกต้องนะคะ ตัวใหญ่นี่ถือว่าไม่ถูกต้องนะคะ def นะคะ แล้วก็กดSpace bar เพื่อวรรค 1 ครั้งนะคะ บอกแล้วว่าวิธีการประกาศฟังก์ชัน ก็คือพิมพ์คำว่า "def" แล้วตามด้วชื่อของฟังก์ชันชื่อของฟังก์ชัน ในตัวอย่างเรา ชื่อว่า Helloทีนี้มาดูชื่อ ชื่อของฟังก์ชันนี่ก็ต้องใช้ตัวพิมพ์เล็กเหมือนกันนะคะ ไม่ใช่ตัวพิมพ์ใหญ่นะคะ ดูดี ๆ นะคะ เพราะฉะนั้นพิมพ์ตัว h ด้วยตัวพิมพ์เล็กนะคะ hello แล้วก็ใส่วงเล็บเข้าไปแล้วก็ตามด้วยพารามิเตอร์ ในวงเล็บพารามิเตอร์ของเรา ก็คือคำว่า "name นะคะ ตัวพิมพ์เล็กเพราะมันเป็นตัวแปรชื่อว่า name เมื่อเสร็จฟังก์ชันใช่ไหม เสร็จคำสั่งฟังก์ชันต้องปิดด้วยเครื่องหมายโคลอนเสมอ แล้วกด Enter 1 ครั้ง ใช้วิธีกด Enter นะ ไม่ใช่เลื่อนเมาส์ลงไป สังเกตบอกแล้วพอกด Enter นี่ตำแหน่งของเคอร์เซอร์มันจะ Tab เข้าไปนะ Stagement หรือคำสั่งต่อไปที่เราจะใช้ ก็คือ คำสั่งแสดงผลนะคะ ก็คือคำสั่ง print แล้วก็ตามด้วยวงเล็บเหมือนเดิม print อะไรสิ่งที่อยู่ในวงเล็บอย่าลืมนะคะ เมื่อใดที่บอกให้พิมพ์วงเล็บนี่ สังเกตมันจะมี () ขึ้นมานะ เดี๋ยวอ๋อ ขอโทษ ไม่ได้สลับหน้ามันไม่สลับหน้า ตลอดเลย เราก็ว่าอยู่แต่เด็กพิมพ์ตามใน PowerPoint แต่อยากให้เห็นใน Colab เพราะว่าเมาส์หาย เมาส์จ๋า เมาส์จ๋า นั่นน่ะสิ เดี๋ยวเลื่อนไอ้นี่เอาก็ได้นะ โอเคนะคะ ในนี้จะพิมพ์คำว่า "print" นะคะ เดี๋ยวจะโชว์ไอ้ตัวข้อความด้วย เดี๋ยวสิ้นสุดการนำเสนอก่อน เดี๋ยวให้เห็น 2 หน้า ด้วยกัน ไม่สิ ไม่สิ โอเคไหม เดี๋ยวนะ กำลังหามุม มุมให้เธออยู่โอเคน่าจะได้เห็น 2 อย่างนะ เห็นไหมคะ จะมาที่คำสั่ง print ของเรานะแล้วในวงเล็บของ printลืมทำให้มันขึ้น 2 หน้าคู่กัน เดี๋ยวนะคะ แป๊บหนึ่งขยับได้ไหม ไม่เห็นหน้านี้อีกอ่าเครขอ 2 ทำไมได้ 4 นี่เดี๋ยวนะ เดี๋ยวจะกระเถิบแล้วก็ไม่เห็นในสไลด์อีก สิส่วนแบ่งทางการตลาดเยอะโอเคไหมอีกหน่อยหนึ่ง นะคะ วงเล็บในวงเล็บของคำว่า "print" เราจะ print คำว่า "hello" นะคะ แล้วตามด้วยเห็นไหม ตรงก่อน... ตรงก่อน Hello มีเครื่องหมายคำพูดนะดูดี ๆ อาจจะเห็นไม่ชัด ใส่เครื่องหมายคำพูดนะคะ Single Quote หรือแล้วค่อยพิมพ์ Hello ด้วยตัวใหญ่แล้วก็ตามด้วย เครื่องหมาย % %s นั่นคือ ข้อความนี้เป็น String นะคะ แล้วหลังเครื่องหมายคำพูดเด็ก ๆ ต้องเลื่อนไอ้ตัวนี้ไปหลังเครื่องหมายคำพูดนะพิมพ์ % name แล้วก็พิมพ์เปอร์เซ็นต์ แล้วตามด้วย name ตัวเล็กนะ ดูดี ๆ นะ เราเรียกใช้ เราสร้างพารามิเตอร์ด้วย name ตัวเล็ก เวลาเรียกใช้ก็ต้องใช้ตัวเล็กนะคะ นี่คือเสร็จฟังก์ชันนี้แล้ว ลองเรียกใช้งาน ลองกด Play ก่อน ขอโทษ เราจะได้รู้นะคะ การกดตัวนี้นะ เพื่อจะได้เช็กว่าที่เรา code ที่เราเขียนไปนี่มันถูกไหม ถ้าผิดมันจะขึ้น Error ใช่ไหมคะ ครั้งแรกเวลา โค้ดมันก็จะช้านิดหนึ่งก็จะยังหมุนติ้ว ๆ อยู่นะคะ เราก็ต้องรอนะคะ แสดงว่าไม่มีอะไรผิดนะคะ ไม่ทำอะไรนะ เพราะฟังก์ชันสร้างขึ้นมา สร้างแล้วแล้วอย่าลืมว่ามันจะต้องมีการเรียกใช้ นึกออกนะ ต้องสร้างเพื่อให้มันไปโดนเรียกก่อน มันถึงจะทำงานนะคะ ตอนนี้คือสร้างเพื่อให้คอมพิวเตอร์มันจำ จำไว้ว่าตอนนี้เราสร้างฟังก์ชันชื่อว่า hello แล้วนะคะ ที่ให้กด Run นี่เพื่อจะให้ตรวจสอบว่าโค้ดที่เราเขียนไปมันถูกหรือเปล่า ถ้าผิดมันจะแสดง Errorนะ ถ้าเขียนไม่ผิดมันก็ไม่แสดงใช่ไหมคะ นี่ลอง Run แล้วนะคะ Error ไม่ขึ้นนะคะ ของใครขึ้น Error ยกมือสิ่งที่ต้องเช็ก ก็คือ 1. คำสั่งd-e-f นะคะ definitionการประกาศฟังก์ชัน ตัวที่ 2ก็คือชื่อฟังก์ชันใช้ตัวเล็ก และตัวที่ 3 พารามิเตอร์ พามิเตอร์จะมีค่าอยู่ในวงเล็บเสมอนะคะ เสร็จแล้วต้องปิดการประกาศฟังก์ชันด้วยโคลอนเสมอนะคะ ทีนี้เมื่อกี้ประกาศฟังก์ชันที่ 1 ไปแล้วมาดูแบบที่ 2 นะคะ ฟังก์ชันที่มีการ return หรือส่งกลับค่าเดี๋ยวขยายหน้าไอ้นี่ให้ก่อนสลับไปสลับมากันอยู่นี่ล่ะเรา อันนี้ อันนี้แบบไม่มีreturn ค่านะในตัวอย่างนี่เราสร้างฟังก์ชันชื่อ hello นะคะ เราใช้เราสร้างฟังก์ชันนี้ขึ้นมาเพื้อต้องการให้มันแสดงข้อความ เอาอีกแล้วอะไรอีกหว่าสลับจอไม่ได้เลย น่าจะเป็นกับไอ้ตัวนี้ทำไมหนก่อนไม่เห็นมี หรือเพราะเป็นไอ้นี่บ่ะ Windows 11 นี่บ่ มันถึงขึ้นไอ้สลับไอ้จอไอ้นี่ทุกทีเลย แล้วก็เป็นปัญหาในการใช้งานจะได้ใช้ Windows อื่นเสียล่ะมั้งสลับไอ้จอไอ้นี่นะคะ มาดูตัวอย่างที่ 2 นะคะ เราจะประกาศฟังก์ชันมีการใช้ return value หรือการคืนค่ากลับ ในตัวอย่างที่ 2 เป็นการประกาศ ฟังก์ชันที่ชื่อว่า area โดยมีพารามิเตอร์ 2 ตัว width แล้วก็ความ width แล้วก็ height ซึ่ง area ในที่นี้พื้นที่ สูตรการหาพื้นที่สี่เหลี่ยม ก็คือ กว้างคูณยาวเพราะฉะนั้น ค่าพารามิเตอร์ที่ไว้ใช้สำหรับเก็บค่า ก็คือค่าความยาวกับความกว้างนั่นเองนะคะ ก็เลยตั้งชื่อตัวพารามิเตอร์ 2 ตัวนี้ว่า width นั่นเองนะคะ เสร็จแล้วปิดด้วยโคลอน Statement ต่อมาสร้างตัวแปรชื่อว่า C ตัวแปร C สำหรับคำนวณความกว้างคูณความยาว ก็คือคำนวณ หาพื้นที่ของสี่เหลี่ยมนั่นเองนะคะ แล้วทำการ return ค่า c นะคะ ก็คือให้ส่งกลับค่าของ c ก็คือเมื่อเอาพารามิเตอร์มาคำนวณแล้วนี่ c จะได้เท่าไหร่ ส่งกลับค่าให้ c นะคะ นี่คือการประกาศฟังก์ชันแบบมีการ return ค่าเพราะฉะนั้น บางคนคีย์ใน Colab ไปเรียบร้อยแล้วนะคะ เรามาเริ่มคีย์ของเราด้วยนะคะ แล้วมันก็จะไม่ขึ้นไอ้หน้านี้อีกแล้ว มันเป็นอะไรกับมันไม่สลับ Extend หรือมันไม่ขึ้นหน้าจออีกแล้วน่ะโอเค ต้องสลับ 2 รอบเชียวหรือนะคะ เอาไว้ก่อนอย่างนั้นก็ต้องมาจัดไอ้นี่ใหม่ อีกแล้วนี่พิมพ์เพิืมนะครับไม่เห็นตัวหลังอีก เอาเห็นไหมไม่เห็นอีก มันน่านักเชียวแป๊บนึงนะสลับหน้าก่อนโอเคไหม Colab ครับไปไหนแล้วนะคะ