hitexts

Hi, We texts to you.

*args **kwargs ใช้งานอย่างไร

  • *args ชื่อเต็ม ๆ หมายถึง Arguments โดยทำหน้าที่เช่นเดียวกันอาร์กิวเมนต์ปกติในฟังก์ชันเพียงแค่ว่าไม่ได้จำกัดตำแหน่งและจำนวนของอาร์กิวเมนต์ โดย Data Type ของอาร์กิวเมนต์นี้จะเป็น Tuple ทั้งนี้มันสามารถตั้งชื่อเป็นอย่างอื่นได้สำคัญคือต้องมี * นำหน้าก็พอ เช่น *params
  • **kwargs หรือ Keyword Arguments ใช้งานคล้ายคลึงกันกับ *args แต่ว่า **kwargs นั้นจะถูกผ่านค่ามาเป็น Dictionary และเวลาเรียกใช้ฟังก์ชันเราต้องกำหนดชื่ออาร์กิวเมนต์ให้ด้วย

ประโยชน์ของ *args **kwargs คือการช่วยให้ฟังก์ชันมีความยืดหยุ่นในการรับค่าได้มากยิ่งขึ้น ดังในตัวอย่างด้านล่างนี้

ฟังก์ชันหาค่าเฉลี่ยของเลขที่กำหนดให้ โดยในฟังก์ชันนี้จะเห็นว่ารับค่าได้สูงสุดแค่ 5 ค่าเท่านั้น ถ้าเกิดว่าใส่ค่าเกินจะ Error ทันที

การใช้ *args จะช่วยแก้ปัญหานี้ได้ โดยค่าเราจะสามารถส่งเข้าไปกี่ค่าก็ได้ดังในรูปเพราะไม่จำกัดจำนวนและตำแหน่ง โดยเลข 1 ถึง 15 นี้จะถูกส่งเข้าไปในฟังก์ชันเป็น tuple

Argument ปกติยังสามารถใช้ร่วมกันกับ *args ได้ แต่จะต้องใส่ไว้ก่อน *args

**kwargs นั้นการใช้งานจะต้องกำหนดชื่อของอาร์กิวเมนต์ที่เราส่งเข้าไปด้วย และชื่อนั้นก็สามารถนำไปใช้ในฟังก์ชันได้ โดยค่าของ **kwargs จะเป็น dict

ทั้งนี้จะตั้งชื่ออะไรก็ได้ไม่จำเป็นต้องเป็น *args หรือ **kwargs เสมอไป ดังในตัวอย่างเราสามารถตั้งเป็น **kwdict ได้ สำคัญคือ * และ ** ที่อยู่ด้านหน้า

Related Post

Python โหลดรูปภาพจาก URL (โหลดภาพจากลิงก์) ทำอย่างไร
21Oct

Python โหลดรูปภาพจาก URL (โหลดภาพจากลิงก์) ทำอย่างไร

วิธีการโหลดรูปภาพจากลิงก์หลาย ๆ ลิงก์ด้วย Python สามารถทำได้โดยใช้ Request, BytesIO, และ PIL.Image พร้อมปรับขนาดรูปและเซฟเก็บ

*args **kwargs ใน Python มีไว้ใช้งานอย่างไร
20Aug

*args **kwargs ใน Python มีไว้ใช้งานอย่างไร

ในการเขียนโค้ด Python นั้นหลาย ๆ ครั้งในฟังก์ชันเรามักจะเคยเห็น *args **kwargs สองสิ่งนี้มีไว้ใช้เป็น argument เช่นกัน

Python Functions เบื้องต้นที่ควรรู้และนำไปใช้งานในการเขียนโค้ด
10Jul

Python Functions เบื้องต้นที่ควรรู้และนำไปใช้งานในการเขียนโค้ด

ไพธอนนั้นมีสิ่งอำนวยความสะดวกมาให้ผู้เขียนโค้ดได้เลือกใช้เป็นจำนวนมาก ซึ่ง Python Functions ที่มาพร้อมกับภาษาเองก็มีประโยชน์มากเช่นกัน

Python Project เริ่มต้นอย่างไร ควรเตรียมการอะไรบ้างก่อนลงมือเขียนโค้ด
22Jun

Python Project เริ่มต้นอย่างไร ควรเตรียมการอะไรบ้างก่อนลงมือเขียนโค้ด

การจะเริ่มต้น Python Project นั้นสิ่งที่ควรจะต้องทำคือการสร้าง Virtual Environment และเรียกใช้งานบน IDE หรือ Editor ของคุณ

© 2022 hitexts. All rights reserved