บทช่วยสอนงูหลาม

Python HOME แนะนำ Python Python เริ่มต้น ไวยากรณ์หลาม ความคิดเห็นหลาม ตัวแปรหลาม ประเภทข้อมูลหลาม ตัวเลขหลาม Python Casting Python Strings Python Booleans ตัวดำเนินการ Python รายการหลาม Python Tuples ชุดหลาม พจนานุกรม Python Python If...Else Python ในขณะที่ลูป Python สำหรับลูป ฟังก์ชั่นหลาม Python Lambda Python Arrays Python คลาส/วัตถุ มรดกหลาม Python Iterators ขอบเขตหลาม โมดูล Python วันที่หลาม คณิตศาสตร์หลาม Python JSON Python RegEx Python PIP Python ลอง...ยกเว้น อินพุตผู้ใช้ Python การจัดรูปแบบสตริงหลาม

การจัดการไฟล์

การจัดการไฟล์ Python Python อ่านไฟล์ Python เขียน/สร้างไฟล์ Python ลบไฟล์

โมดูล Python

NumPy กวดวิชา เกมส์หมีแพนด้า กวดวิชา Scipy

Python Matplotlib

บทนำ Matplotlib Matplotlib เริ่มต้น Matplotlib Pyplot Matplotlib พล็อต เครื่องหมาย Matplotlib Matplotlib Line ป้ายกำกับ Matplotlib Matplotlib Grid แผนย่อย Matplotlib Matplotlib Scatter Matplotlib บาร์ Matplotlib Histograms Matplotlib แผนภูมิวงกลม

การเรียนรู้ของเครื่อง

เริ่มต้น โหมดค่ามัธยฐาน ส่วนเบี่ยงเบนมาตรฐาน เปอร์เซ็นไทล์ การกระจายข้อมูล การกระจายข้อมูลปกติ พล็อตกระจาย การถดถอยเชิงเส้น การถดถอยพหุนาม การถดถอยพหุคูณ มาตราส่วน รถไฟ/ทดสอบ ต้นไม้การตัดสินใจ

Python MySQL

MySQL เริ่มต้น MySQL สร้างฐานข้อมูล MySQL สร้างตาราง MySQL Insert MySQL Select MySQL Where MySQL สั่งซื้อโดย MySQL Delete MySQL Drop Table MySQL Update MySQL Limit MySQL เข้าร่วม

Python MongoDB

MongoDB เริ่มต้น MongoDB สร้างฐานข้อมูล MongoDB สร้างคอลเล็กชัน MongoDB แทรก MongoDB ค้นหา แบบสอบถาม MongoDB MongoDB Sort MongoDB ลบ MongoDB Drop Collection อัพเดท MongoDB MongoDB Limit

การอ้างอิงหลาม

ภาพรวมของ Python ฟังก์ชันในตัวของ Python Python String Methods Python List Methods วิธีพจนานุกรม Python วิธี Python Tuple Python Set Methods วิธีไฟล์ Python คีย์เวิร์ด Python ข้อยกเว้นของ Python คำศัพท์หลาม

การอ้างอิงโมดูล

โมดูลสุ่ม โมดูลคำขอ โมดูลสถิติ โมดูลคณิตศาสตร์ โมดูล cMath

Python ฮาวทู

ลบรายการที่ซ้ำกัน ย้อนกลับสตริง เพิ่มสองตัวเลข

ตัวอย่าง Python

ตัวอย่าง Python Python Compiler แบบฝึกหัดหลาม แบบทดสอบ Python ใบรับรอง Python

คลาสและอ็อบเจกต์ของ Python


Python คลาส/วัตถุ

Python เป็นภาษาโปรแกรมเชิงวัตถุ

เกือบทุกอย่างใน Python เป็นวัตถุที่มีคุณสมบัติและวิธีการ

คลาสเป็นเหมือนตัวสร้างวัตถุหรือ "พิมพ์เขียว" สำหรับการสร้างวัตถุ


สร้างชั้นเรียน

ในการสร้างคลาส ใช้คำสำคัญclass:

ตัวอย่าง

สร้างคลาสชื่อ MyClass โดยมีคุณสมบัติชื่อ x:

class MyClass:
  x = 5

สร้างวัตถุ

ตอนนี้เราสามารถใช้คลาสชื่อ MyClass เพื่อสร้างอ็อบเจกต์:

ตัวอย่าง

สร้างวัตถุชื่อ p1 และพิมพ์ค่าของ x:

p1 = MyClass()
print(p1.x)

ฟังก์ชัน __init__()

ตัวอย่างข้างต้นเป็นคลาสและอ็อบเจ็กต์ในรูปแบบที่ง่ายที่สุด และไม่มีประโยชน์จริง ๆ ในการใช้งานจริง

เพื่อให้เข้าใจความหมายของคลาส เราต้องเข้าใจฟังก์ชัน __init__() ในตัว

คลาสทั้งหมดมีฟังก์ชันที่เรียกว่า __init__() ซึ่งจะดำเนินการเสมอเมื่อมีการเริ่มต้นคลาส

ใช้ฟังก์ชัน __init__() เพื่อกำหนดค่าให้กับคุณสมบัติของอ็อบเจ็กต์ หรือการดำเนินการอื่นๆ ที่จำเป็นต้องทำเมื่อสร้างอ็อบเจ็กต์:

ตัวอย่าง

สร้างคลาสชื่อ Person ใช้ฟังก์ชัน __init__() เพื่อกำหนดค่าสำหรับชื่อและอายุ:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)

หมายเหตุ:ฟังก์ชัน__init__()นี้จะถูกเรียกโดยอัตโนมัติทุกครั้งที่มีการใช้คลาสเพื่อสร้างอ็อบเจกต์ใหม่



วิธีการวัตถุ

ออบเจ็กต์ยังสามารถมีเมธอดได้ เมธอดในอ็อบเจกต์คือฟังก์ชันที่เป็นของอ็อบเจ็กต์

ให้เราสร้างวิธีการในคลาส Person:

ตัวอย่าง

แทรกฟังก์ชันที่พิมพ์คำทักทาย และดำเนินการบนวัตถุ p1:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

  def myfunc(self):
    print("Hello my name is " + self.name)

p1 = Person("John", 36)
p1.myfunc()

หมายเหตุ: พารามิเตอร์คือ การselfอ้างอิงถึงอินสแตนซ์ปัจจุบันของคลาส และใช้เพื่อเข้าถึงตัวแปรที่เป็นของคลาส


พารามิเตอร์ตนเอง

พารามิเตอร์คือ การselfอ้างอิงถึงอินสแตนซ์ปัจจุบันของคลาส และใช้เพื่อเข้าถึงตัวแปรที่เป็นของคลาส

ไม่จำเป็นต้องตั้งชื่อselfคุณสามารถเรียกมันว่าอะไรก็ได้ที่คุณต้องการ แต่จะต้องเป็นพารามิเตอร์แรกของฟังก์ชันใดๆ ในคลาส:

ตัวอย่าง

ใช้คำว่าmysilllyobjectและabcแทนself :

class Person:
  def __init__(mysillyobject, name, age):
    mysillyobject.name = name
    mysillyobject.age = age

  def myfunc(abc):
    print("Hello my name is " + abc.name)

p1 = Person("John", 36)
p1.myfunc()

แก้ไขคุณสมบัติของวัตถุ

คุณสามารถแก้ไขคุณสมบัติบนวัตถุเช่นนี้:

ตัวอย่าง

ตั้งอายุของ p1 เป็น 40:

p1.age = 40

ลบคุณสมบัติของวัตถุ

คุณสามารถลบคุณสมบัติบนวัตถุโดยใช้ delคำสำคัญ:

ตัวอย่าง

ลบคุณสมบัติอายุจากวัตถุ p1:

del p1.age

ลบวัตถุ

คุณสามารถลบวัตถุโดยใช้delคำสำคัญ:

ตัวอย่าง

ลบวัตถุ p1:

del p1

คำสั่งผ่าน

classคำจำกัดความต้องไม่ว่างเปล่า แต่ถ้าคุณมีเหตุผลบางอย่างที่มีclassคำจำกัดความที่ไม่มีเนื้อหา ให้ใส่passคำชี้แจงเพื่อหลีกเลี่ยงข้อผิดพลาด

ตัวอย่าง

class Person:
  pass

ทดสอบตัวเองด้วยแบบฝึกหัด

ออกกำลังกาย:

สร้างคลาสชื่อ MyClass:

 MyClass:
  x = 5