เปรียบเทียบกับภาษาอย่าง Perl, Python มีโครงสร้างควบคุมจำนวน จำกัด :
- เท่านั้น
if
และไม่มีการunless
,
- เท่านั้น
for
ที่ iterates กว่าลำดับและไม่มีforeach
หรือ C สไตล์for
,
- เพียง
while
ว่าการตรวจสอบสภาพทุกห่วงและไม่มีdo-while
,
- เท่านั้น
if-elif
และไม่มีการswitch
,
- มีเพียงความคิดเห็นเดียวที่สร้างขึ้น
#
และสำหรับทุกบรรทัดที่คุณสามารถบอกได้ว่ามีการใส่ความคิดเห็นหรือไม่โดยไม่ดูที่บรรทัดก่อนหน้า
นอกจากนี้ยังมีวิธีหนึ่งในการเยื้องแหล่งที่มาของคุณ กรณีส่วนใหญ่ของการเยื้องโฆษณาจะได้รับการยกเว้น
สิ่งนี้ทำให้การวิเคราะห์แหล่ง Python ง่ายขึ้นสำหรับมนุษย์
มีความพยายามที่จะสร้างน้อยที่สุด แต่สมบูรณ์ในประเภทที่มีอยู่แล้วและไลบรารีมาตรฐาน
- สำหรับรายการที่ไม่แน่นอนคุณใช้
list
ชนิดในตัวเท่านั้น เป็น O (1) สำหรับการปฏิบัติงานส่วนใหญ่และคุณไม่จำเป็นต้องเลือกใช้งานที่เหมาะสม
- สำหรับรายการที่ไม่เปลี่ยนแปลงอย่างเท่าเทียมกันคุณเพียงแค่ใช้
tuple
ประเภท
- สำหรับแผนที่คุณสามารถใช้ในตัวเท่านั้น
dict
ซึ่งมีประสิทธิภาพแช่งในกรณีส่วนใหญ่จำเป็นต้องไตร่ตรองซึ่งการดำเนินการที่จะใช้ไม่ได้
Python 3 ขยายไปถึงจำนวนเต็ม: ไม่ว่าจำนวนเต็มของคุณจะใหญ่แค่ไหนคุณก็ใช้ประเภทเดียวกันและไม่สนใจเรื่องการบีบบังคับ
Python พยายามหลีกเลี่ยงการสร้างประโยคน้ำตาล แต่บางครั้งมันจะเพิ่มน้ำตาลประโยคเพียงเพื่อให้วิธีที่ชัดเจนที่เห็นได้ชัด คุณสามารถเขียนif foo is not None
แทนif not (foo is None)
เพราะ 'ไม่ได้เป็น' ใส่ซองพิเศษ ยังfoo is not None
อ่านได้ง่ายไม่สามารถตีความผิดและคุณไม่ต้องคิดคุณแค่เขียนสิ่งที่ชัดเจน
แน่นอนว่าสิ่งที่ซับซ้อนยิ่งกว่าใน Python สามารถทำได้หลายวิธี คุณสามารถเพิ่มวิธีการเรียนโดยการประกาศหรือโดยการกำหนดช่องง่ายคุณสามารถส่งข้อโต้แย้งไปยังฟังก์ชั่นในหลายวิธีสร้างสรรค์ ฯลฯ นั่นเป็นเพียงเพราะ internals ของภาษาส่วนใหญ่จะเปิดเผย
กุญแจสำคัญคือมักจะมีวิธีหนึ่งที่ตั้งใจจะให้ดีที่สุดคือเคสทั้งหมด หากมีวิธีอื่นอยู่พวกเขาจะไม่ถูกเพิ่มเป็นทางเลือกที่เท่าเทียมกัน (เช่นif
และunless
) แต่เพียงแสดงผลงานภายใน ช้า แต่อย่างต่อเนื่องทางเลือกดังกล่าวล้าสมัย (ไม่กำจัด!) โดยการเพิ่มกลไกที่ดีที่สุดที่รู้จักกัน
มัณฑนากรตัดการเรียกใช้ฟังก์ชัน AOP ก่อนที่ 2.6 คุณต้องใช้__metaclass__
สมาชิกมายากลที่จะประกาศ metaclass ระดับของ; ตอนนี้คุณสามารถใช้ไวยากรณ์มัณฑนากรเดียวกันสำหรับสิ่งนี้ได้เช่นกัน ก่อนหน้า 3.0 คุณมีสตริงสองประเภทคือไบต์ที่มุ่งเน้นและ Unicode ซึ่งคุณสามารถผสมโดยไม่ได้ตั้งใจ ตอนนี้คุณมี Unicode เดียวstr
และไบนารีโปร่งใสbytes
ซึ่งคุณไม่สามารถผสมได้โดยไม่ได้ตั้งใจ
"""
ความคิดเห็น (เอกสาร) เหล่านี้ครอบคลุมหลายบรรทัด