Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. สตริงย่อยพาลินโดรมที่ยาวที่สุด (Longest Palindromic Substring) ใน Python

    สมมติว่าเรามีสตริง S เราต้องหาสตริงย่อยพาลินโดรมที่ยาวที่สุดใน S เราสมมติว่าความยาวของสตริง S คือ 1000 ดังนั้นถ้าสตริงคือ BABAC สตริงย่อยพาลินโดรมที่ยาวที่สุดคือ BAB เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้: กำหนดเมทริกซ์สี่เหลี่ยมจัตุรัสขนาดเท่าความยาวสตริง และเติมด้วย False ตั้งค่า diagonal หล

  2. อาร์กิวเมนต์ของข้อยกเว้น (Argument of an Exception) ใน Python

    ข้อยกเว้นอาจมี อาร์กิวเมนต์ ซึ่งเป็นค่าที่ให้ข้อมูลเพิ่มเติมเกี่ยวกับปัญหา เนื้อหาของอาร์กิวเมนต์แตกต่างกันไปตามข้อยกเว้น คุณจับอาร์กิวเมนต์ของข้อยกเว้นได้โดยการระบุตัวแปรใน except clause ดังนี้: try: You do your operations here; ...................... except ExceptionType, Argument: Yo

  3. การ Raise ข้อยกเว้น (Raising Exceptions) ใน Python

    คุณสามารถ raise ข้อยกเว้นได้หลายวิธีโดยใช้คำสั่ง raise ไวยากรณ์ทั่วไปสำหรับคำสั่ง raise คือดังนี้: ไวยากรณ์ (Syntax) raise [Exception [, args [, traceback]]] ที่นี่ Exception คือประเภทของข้อยกเว้น (เช่น NameError) และ argument คือค่าสำหรับอาร์กิวเมนต์ข้อยกเว้น อาร์กิวเมนต์เป็นทางเลือก หากไม่ระบุ อ

  4. ข้อยกเว้นที่ผู้ใช้กำหนด (User-Defined Exceptions) ใน Python

    Python ยังอนุญาตให้คุณสร้างข้อยกเว้นของตัวเองได้โดยการสืบทอดคลาสจากข้อยกเว้น built-in มาตรฐาน นี่คือตัวอย่างที่เกี่ยวข้องกับ RuntimeError ที่นี่ สร้างคลาสที่สืบทอดจาก RuntimeError นี้มีประโยชน์เมื่อคุณต้องการแสดงข้อมูลเฉพาะเจาะจงมากขึ้นเมื่อจับข้อยกเว้นได้ ในบล็อก try ข้อยกเว้นที่ผู้ใช้กำหนดถูก ra

  5. คำศัพท์ OOP ใน Python

    Class (คลาส) - โปรโตไทป์ที่ผู้ใช้กำหนดสำหรับอ็อบเจ็กต์ ที่กำหนดชุดของแอตทริบิวต์ลักษณะเฉพาะของอ็อบเจ็กต์ใดๆ ของคลาส แอตทริบิวต์คือ สมาชิกข้อมูล (class variables และ instance variables) และ เมธอด เข้าถึงผ่าน dot notation Class variable (ตัวแปรคลาส) - ตัวแปรที่ถูกแบ่งปันโดยทุกอินสแตนซ์ของคลาส ตัวแปรค

  6. การสร้างคลาส (Creating Classes) ใน Python

    คำสั่ง class สร้างการกำหนดคลาสใหม่ ชื่อของคลาสจะตามคีย์เวิร์ด class ทันที ตามด้วย colon ดังนี้: class ClassName: Optional class documentation string class_suite คลาสมี documentation string ซึ่งเข้าถึงได้ผ่าน ClassName.__doc__ class_suite ประกอบด้วยคำสั่งส่วนประกอบทั้งหมดที่กำหนดสมาชิกคลาส

  7. การสร้างอินสแตนซ์อ็อบเจ็กต์ (Creating Instance Objects) ใน Python

    เพื่อสร้างอินสแตนซ์ของคลาส คุณเรียกคลาสโดยใช้ชื่อคลาสและส่งอาร์กิวเมนต์ที่เมธอด __init__ ยอมรับ This would create first object of Employee class emp1 = Employee(Zara, 2000) This would create second object of Employee class emp2 = Employee(Manni, 5000) คุณเข้าถึงแอตทริบิวต์ของอ็อบเจ็กต์โดยใช้ dot o

  8. แอตทริบิวต์ในตัวของคลาส (Built-In Class Attributes) ใน Python

    ทุกคลาส Python เก็บแอตทริบิวต์ในตัวต่อไปนี้ และสามารถเข้าถึงได้ด้วย dot operator เหมือนแอตทริบิวต์อื่นๆ: __dict__ - Dictionary ที่มี namespace ของคลาส __doc__ - สตริงเอกสารของคลาส หรือ none หากไม่ได้กำหนด __name__ - ชื่อคลาส __module__ - ชื่อโมดูลที่คลาสถูกกำหนด แอตทริบิวต์นี้คือ __main__ ในโหมดโต

  9. การทำลายอ็อบเจ็กต์ (Garbage Collection) ใน Python

    Python ลบอ็อบเจ็กต์ที่ไม่จำเป็น (built-in types หรือ class instances) อัตโนมัติเพื่อปล่อยพื้นที่หน่วยความจำ กระบวนการที่ Python เรียกคืนบล็อกหน่วยความจำที่ไม่ได้ใช้แล้วเป็นระยะเรียกว่า Garbage Collection (การเก็บขยะ) Garbage collector ของ Python ทำงานระหว่างการรันโปรแกรมและถูกทริกเกอร์เมื่อ referen

  10. การสืบทอดคลาส (Class Inheritance) ใน Python

    แทนที่จะเริ่มจากศูนย์ คุณสามารถสร้างคลาสโดยการสืบทอดจากคลาสที่มีอยู่แล้ว โดยการระบุคลาสพาเรนต์ในวงเล็บหลังชื่อคลาสใหม่ คลาสลูกสืบทอดแอตทริบิวต์ของคลาสพาเรนต์ และคุณสามารถใช้แอตทริบิวต์เหล่านั้นได้เหมือนถูกกำหนดในคลาสลูก คลาสลูกยังสามารถโอเวอร์ไรด์สมาชิกข้อมูลและเมธอดจากพาเรนต์ได้อีกด้วย ไวยากรณ์ (

  11. การโอเวอร์ไรด์เมธอด (Overriding Methods) ใน Python

    คุณสามารถโอเวอร์ไรด์เมธอดของคลาสพาเรนต์ได้ตลอดเวลา เหตุผลหนึ่งในการโอเวอร์ไรด์เมธอดของพาเรนต์คือ คุณอาจต้องการฟังก์ชันการทำงานที่พิเศษหรือแตกต่างในคลาสลูก (subclass) ตัวอย่าง #!/usr/bin/python class Parent: # กำหนดคลาสพาเรนต์ def myMethod(self): print Calling parent method class Child(

  12. เมธอดพื้นฐานสำหรับโอเวอร์โหลด (Base Overloading Methods) ใน Python

    ตารางต่อไปนี้แสดงฟังก์ชันทั่วไปบางส่วนที่คุณสามารถโอเวอร์ไรด์ในคลาสของตัวเองได้: ลำดับ เมธอด คำอธิบาย และตัวอย่างการเรียก 1 __init__ ( self [,args...] )Constructor (พร้อมอาร์กิวเมนต์ทางเลือก)ตัวอย่างการเรียก: obj = className(args) 2 __del__( self )Destructor ลบอ็อบเจ็กต์ตัวอย่างการเรียก: d

  13. การโอเวอร์โหลดออเปอเรเตอร์ (Operator Overloading) ใน Python

    สมมติว่าคุณสร้างคลาส Vector เพื่อแทนเวกเตอร์สองมิติ จะเกิดอะไรขึ้นเมื่อคุณใช้ตัวดำเนินการบวก (+) เพื่อบวกพวกมัน? Python จะแจ้งข้อผิดพลาดโดยส่วนใหญ่ อย่างไรก็ตาม คุณสามารถกำหนดเมธอด __add__ ในคลาสของคุณเพื่อดำเนินการบวกเวกเตอร์ และตัวดำเนินการบวกจะทำงานตามที่คาดหวัง: ตัวอย่าง #!/usr/bin/python clas

  14. การซ่อนข้อมูล (Data Hiding) ใน Python

    แอตทริบิวต์ของอ็อบเจ็กต์อาจมองเห็นหรือไม่มองเห็นได้ภายนอกการกำหนดคลาส คุณต้องตั้งชื่อแอตทริบิวต์ด้วยคำนำหน้า underscore คู่ (__) และแอตทริบิวต์เหล่านั้นจึงจะไม่มองเห็นโดยตรงจากภายนอก ตัวอย่าง #!/usr/bin/python class JustCounter: __secretCount = 0 def count(self): self.__secretCount

  15. ฟังก์ชัน match ใน Python

    ฟังก์ชันนี้พยายามจับคู่นิพจน์ปกติ pattern กับ string พร้อม flags ทางเลือก ไวยากรณ์ (Syntax) นี่คือไวยากรณ์ของฟังก์ชันนี้: re.match(pattern, string, flags=0) คำอธิบายพารามิเตอร์: ลำดับ พารามิเตอร์และคำอธิบาย 1 patternนิพจน์ปกติที่จะจับคู่ 2 stringสตริงที่จะค้นหาเพื่อจับคู่กับ pattern ที่ต

  16. ฟังก์ชัน search ใน Python

    ฟังก์ชันนี้ค้นหาครั้งแรกที่พบของนิพจน์ปกติ pattern ภายใน string พร้อม flags ทางเลือก ไวยากรณ์ (Syntax) นี่คือไวยากรณ์ของฟังก์ชันนี้: re.search(pattern, string, flags=0) คำอธิบายพารามิเตอร์: ลำดับ พารามิเตอร์และคำอธิบาย 1 patternนิพจน์ปกติที่จะจับคู่ 2 stringสตริงที่จะค้นหาเพื่อจับคู่กับ

  17. การจับคู่ (Match) เทียบกับการค้นหา (Search) ใน Python

    Python มีการดำเนินการพื้นฐานสองแบบที่อิงตามนิพจน์ปกติ: match ตรวจสอบการจับคู่เฉพาะที่ต้นทางของสตริง ในขณะที่ search ตรวจสอบการจับคู่ที่ใดก็ตามในสตริง (นี่คือค่าเริ่มต้นของ Perl) ตัวอย่าง searchObj.group() : , searchObj.group() else: print Nothing found!! ผลลัพธ์ (Output) เมื่อรันโค้ดข้างต้น จ

  18. การค้นหาและแทนที่ (Search and Replace) ใน Python

    หนึ่งในเมธอด re ที่สำคัญที่สุดซึ่งใช้นิพจน์ปกติคือ sub ไวยากรณ์ (Syntax) re.sub(pattern, repl, string, max=0) เมธอดนี้แทนที่ทุกครั้งที่พบนิพจน์ปกติ pattern ใน string ด้วย repl โดยแทนที่ทุกครั้งที่พบ เว้นแต่จะระบุ max เมธอดนี้คืนค่าสตริงที่แก้ไขแล้ว ตัวอย่าง #!/usr/bin/python import re phone = 200

  19. ตัวปรับแต่งนิพจน์ปกติ (Regular Expression Modifiers) ใน Python

    ตัวอักษรนิพจน์ปกติ (Regular expression literals) อาจรวมตัวปรับแต่ง (modifier) เพื่อควบคุมด้านต่างๆ ของการจับคู่ (matching) ตัวปรับแต่งเหล่านี้ระบุเป็นแฟล็ก (flag) ทางเลือก คุณสามารถระบุตัวปรับแต่งหลายตัวโดยใช้ OR แบบเฉพาะเจาะจง (|) ซึ่งอาจแสดงในรูปแบบต่อไปนี้: ลำดับ ตัวปรับแต่งและคำอธิบาย 1

  20. Regular Expression Patterns ใน Python - รูปแบบ Regex

    ยกเว้น control characters (+ ? . * ^ $ ( ) [ ] { } | \) ตัวอักษรอื่นๆ จับคู่ตัวเอง คุณสามารถ escape control character ได้โดยใส่ backslash นำหน้า ตารางด้านล่างแสดง regular expression syntax ที่มีใน Python: ลำดับPattern & Description 1^จับคู่ต้นบรรทัด 2$จับคู่ท้ายบรรทัด 3.จับคู่ตัวอักษรใดๆ ห

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:128/451  20-คอมพิวเตอร์/Page Goto:1 122 123 124 125 126 127 128 129 130 131 132 133 134