ขีดล่างเดียว
ชื่อในคลาสที่มีเครื่องหมายขีดล่างนำหน้านั้นโดยทั่วไปแล้วเพื่อระบุให้โปรแกรมเมอร์คนอื่นๆ ทราบว่าแอตทริบิวต์หรือวิธีการนั้นตั้งใจให้เป็นแบบส่วนตัว
ขอแนะนำให้ใช้ขีดล่างเดี่ยวสำหรับกึ่งส่วนตัวและขีดล่างคู่สำหรับตัวแปรส่วนตัวทั้งหมด
หากต้องการอ้างอิง PEP-8 -
_single_leading_underscore:ตัวบ่งชี้ "การใช้งานภายใน" ที่อ่อนแอ เช่น. จากการนำเข้า M * ไม่นำเข้าวัตถุที่มีชื่อขึ้นต้นด้วยขีดล่าง
ตัวอย่าง
รหัสต่อไปนี้แสดงความแตกต่างระหว่างคำนำหน้าขีดล่างคู่และเดี่ยว
class MyClass(): def __init__(self): self.__fullrprivate = "World" self._semiprivate = "Hello" mc = MyClass() print mc._semiprivate print mc.__fullprivate
ผลลัพธ์
Traceback (most recent call last): Hello File "C:/Users/TutorialsPoint1/~_1.py", line 8, in <module> print mc.__fullprivate AttributeError: MyClass instance has no attribute '__fullprivate'