หลุม พราง ทั่ว ไป ใน การ โปรแกรม แบบ Python และ วิธี หลีก เลี่ยง การ ทํา ให้ พวก เขา อยู่ ใน สภาพ เช่น นั้น
Table of Contents
ภาษา Python เป็น ภาษา โปรแกรม ที่ รู้ จัก กัน ทั่ว ไป ใน เรื่อง ความ เรียบ ง่าย และ การ ใช้ ใน ทาง กลับ กัน แต่ ผู้ พัฒนา มัก จะ พบ กับ หลุม พราง ทั่ว ไป ที่ อาจ นํา ไป สู่ แมลง หรือ รหัส ที่ ไม่ มี ประสิทธิภาพ.
หลุม พราง ทั่ว ไป ใน การ โปรแกรม แบบ Python
ข้อผิดพลาดที่เกิดขึ้นบ่อย ๆ คือ การจัดการอาร์กิวเมนต์ปริยายแบบ muable ในฟังก์ชันไม่ถูกต้อง การใช้วัตถุแบบ multable as list หรือพจนานุกรมโดยปริยาย อาจทําให้เกิดพฤติกรรมที่ไม่คาดคิดขึ้นได้ เนื่องจากออบเจกต์ปริยายมีการใช้ร่วมกันในการเรียกฟังก์ชัน
วิธี หลีก เลี่ยง ปัญหา เรื่อง การ พูด ติด อ่าง แบบ ไม่ มี การ ควบคุม
ใช้ [FLT: 0] None[FLT: 1] เป็นค่าปริยาย และเริ่มใช้วัตถุ mubble ในฟังก์ชัน ซึ่งวิธีการนี้จะทําให้มั่นใจว่าแต่ละฟังก์ชันมีออบเจกต์ที่สดใหม่
ตัวอย่าง:
[FLT: 0] ป้องกันการเพิ่มข้อมูล (page, items=ไม่มีชื่อ):
[FLT: 0] ถ้ารายการเป็นเลขศูนย์ [
[FLT: 0] รายการ =
[FLT: 0] รายการ. append( สื่อ)
[FLT: 0] รายการส่งกลับ [[FLT: 1]
ข้อ ผิด พลาด ทั่ว ไป ที่ มี ตัวแปร ต่าง ๆ
ตัวแปรที่นิยามภายในฟังก์ชันเป็นท้องถิ่น แต่บางครั้งนักพัฒนาก็เข้าใจผิดว่า พวกมันสามารถเข้าได้ภายนอก
ฝึก การ จัด การ กับ ตัวแปร อย่าง ดี ที่ สุด
ใช้ตัวแปรภายในฟังก์ชัน และหลีกเลี่ยงตัวแปรทั่วไปที่ไม่จําเป็น เมื่อต้องใช้ตัวแปรทั่วไป ให้ประกาศมันโดยตรงโดยใช้กุญแจ[FLT: 0]global
ตัวอย่าง:
[FLT: 0] ตัวนับโลก
การ ยก เว้น อย่าง เหมาะ สม
การ ไม่ ใส่ ใจ ข้อ ยก เว้น อาจ ทํา ให้ โปรแกรม ต่าง ๆ ล้ม เหลว ได้.
การ ใช้ วิธี แก้ ข้อ ขัด แย้ง อย่าง มี ประสิทธิภาพ
ใช้ บล็อก ที่ ใช้ ใน การ ตรวจ สอบ ข้อ ยก เว้น เฉพาะ.
ตัวอย่าง:
[FLT: 0]. พยายาม:
[FLT: 0] ผล = 10/0
[FLT: 0] ยกเว้นศูนย์ Diviewer :
[FLT: 0] พิมพ์[ไม่สามารถหารด้วยศูนย์ได้"]