Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. หา Permutations ทั้งหมดของสตริงใน Python

    โจทย์: กำหนดสตริง หา Permutations (การเรียงสับเปลี่ยน) ทั้งหมดที่เป็นไปได้ อัลกอริทึม: Backtracking สลับตัวอักษรตำแหน่งปัจจุบันกับทุกตำแหน่งที่เป็นไปได้ Recursive ไปตำแหน่งถัดไป Backtrack: สลับกลับคืนค่าเดิม ตัวอย่างโค้ด Python def to_string(lst): return .join(lst) def permute(a, l, r):

  2. สร้าง Hash ID ด้วย uuid3() และ uuid5() ใน Python

    UUID (Universally Unique Identifier) เป็นตัวระบุ 128-bit (32 hex digits) มาตรฐาน RFC 4122 Python มี uuid module สร้าง UUID ได้หลายรุ่น uuid3() และ uuid5() - Namespace-based UUID uuid3(namespace, name): ใช้ MD5 Hash uuid5(namespace, name): ใช้ SHA-1 Hash (แนะนำ มากกว่า) Deterministic: Input เดียวกั

  3. Global Keyword ใน Python

    global keyword ใช้ประกาศตัวแปรภายในฟังก์ชันว่าเป็น Global Variable (เข้าถึง/แก้ไขได้ทั่วโปรแกรม) 1. ตัวแปรนอกฟังก์ชัน (Global โดยอัตโนมัติ) x = 56 def func(): y = x * 2 # อ่าน x ได้ (Global scope) return y print(func()) # 112 2. พยายามแก้ไข Global ในฟังก์ชัน (Error) x = 56 def func():

  4. ประวัติศาสตร์ Python

    Python เป็นภาษา Open Source ที่ได้รับความนิยมสูงในทศวรรษ 2010 ใช้กว้างขวางใน Data Analysis, Web Development, AI/ML และ Automation ผู้สร้าง: Guido van Rossum โปรแกรมเมอร์ชาวดัช มีชื่อเรียก Benevolent Dictator For Life (BDFL) จนกว่าจะลาออกเมื่อ กรกฎาคม 2018 เคยทำงานที่ CWI (Centrum Wiskunde & Inform

  5. การกำหนดค่าตัวแปร (Variable Assignment) ใน Python

    Python มีหลายวิธีในการกำหนดค่าตัวแปร 1. Direct Assignment (การกำหนดโดยตรง) x = 5 x = 9 # ค่าใหม่ทับค่าเก่า print(x) # 9 2. Multiple Assignment (หลายตัวแปรพร้อมกัน) a, b, c = 1, 2, 3 x = y = z = 0 # ทั้งสามตัว = 0 3. Conditional Assignment (Ternary Operator) 8 else 0 print(Value of y is:, y)

  6. html5lib และ lxml Parsers ใน Python (BeautifulSoup)

    BeautifulSoup รองรับ parser หลายตัว สองตัวยอดนิยมคือ html5lib และ lxml มีพฤติกรรมต่างกัน html5lib Pure Python implementation ปฏิบัติตาม WHATWG HTML Spec (เหมือน Browser) จัดการ Broken HTML ได้ดี เพิ่ม Tag ที่ขาดหายไปอัตโนมัติ ช้ากว่า lxml lxml ขึ้นอยู่กับ C libraries (libxml2, libxslt) เร็วมาก

  7. Boolean Indexing ใน Python (Pandas)

    Boolean Indexing ใช้ค่า True/False (หรือ 1/0) เป็นดัชนีใน Pandas DataFrame เพื่อกรองแถวข้อมูล สร้าง Boolean Index import pandas as pd game = { Day: [Monday, Tuesday, Wednesday, Thursday, Friday], points: [31, 24, 16, 11, 22] } df = pd.DataFrame(game, index=[True, False, True, False, True]

  8. เปรียบเทียบออบเจ็กต์ใน Python: "is" vs "=="

    Python มี 2 วิธีเปรียบเทียบออบเจ็กต์ที่ทำงานต่างกัน: == (Equality Operator) เปรียบเทียบ ค่า (value) ของออบเจ็กต์ สองออบเจ็กต์ที่มีเนื้อหาเหมือนกัน → True ใช้ __eq__() method is (Identity Operator) เปรียบเทียบ ตัวตน/ที่อยู่หน่วยความจำ (identity/reference) สองตัวแปรอ้างอิง ออบเจ็กต์เดียวกัน → Tru

  9. หาตัวหารร่วม (Common Divisors) ของสองจำนวนใน Python

    โจทย์: กำหนดสองจำนวนเต็ม หาตัวหารร่วมทั้งหมด อัลกอริทึม หาค่า min(a, b) ตรวจสอบหารได้จาก 1 ถึง min นับ/เก็บตัวที่หารทั้งคู่ลงตัว ตัวอย่างโค้ด Python a = 5 b = 45 count = 0 common_divisors = [] for i in range(1, min(a, b) + 1): if a % i == 0 and b % i == 0: count += 1 common

  10. หาตัวประกอบเฉพาะทั้งหมด (Prime Factors) แบบมีประสิทธิภาพใน Python

    โจทย์: หาตัวประกอบเฉพาะทั้งหมดของตัวเลข n (รวมซ้ำ) อัลกอริทึมที่มีประสิทธิภาพ หารด้วย 2 จนหมด (จัดการเลขคู่) ลูปเลขคี่จาก 3 ถึง √n ก้าวละ 2 2 → เป็นเฉพาะตัวสุดท้าย ตัวอย่างโค้ด Python 2: factors.append(n) return factors # ทดสอบ print(prime_factors(200)) # Output: [2, 2, 2, 5

  11. หาผลรวมตัวประกอบคู่ (Even Factors Sum) ใน Python

    โจทย์: หาผลรวมตัวประกอบที่เป็นเลขคู่ของตัวเลข n ข้อสังเกต ถ้า n เป็นเลขคี่ → ไม่มีตัวประกอบคู่ → ผลรวม = 0 ตัวประกอบคู่ต้องมีตัวประกอบ 2 อย่างน้อย 1 ตัว ใช้ Prime Factorization คำนวณผลรวมตัวประกอบทั้งหมด แล้วลบตัวประกอบคี่ออก ตัวอย่างโค้ด Python = 2: result *= (1 + temp_n) retur

  12. หาตำแหน่งตัวคูณที่ n ของ k ใน Fibonacci Series ใน Python

    โจทย์: หาตำแหน่งของตัวคูณที่ n ของตัวเลข k ในลำดับ Fibonacci ตัวอย่าง k = 4, n = 5 (หาตัวคูณของ 4 ลำดับที่ 5) Output: 30 อัลกอริทึม สร้างลำดับ Fibonacci ทีละตัว นับตัวที่หาร k ลงตัว เมื่อนับครบ n ตัว คืนตำแหน่ง (index × n ตามโค้ดต้นฉบับ) ตัวอย่างโค้ด Python (แก้ไขจากต้นฉบับ) def find_position(k

  13. นับจำนวนตัวประกอบคี่ในช่วง (Odd Factors Count in Range) ใน Python

    โจทย์: กำหนดช่วง [n, m] หาจำนวนเต็มในช่วงที่มีตัวประกอบ (factors) เป็นจำนวนคี่ ข้อสังเกตทางคณิตศาสตร์ เฉพาะจำนวนที่เป็น Perfect Square (ยกกำลังสอง) เท่านั้นที่มีตัวประกอบเป็นจำนวนคี่ เพราะตัวประกอบมักมาคู่กัน (a × b = n) ยกเว้น √n × √n สูตร จำนวน Perfect Square ใน [n, m] = ⌊√m⌋ - ⌊√(n-1)⌋ ตัวอย่า

  14. ตรวจสอบคีย์เวิร์ด (Keyword) ใน Python

    โจทย์: ตรวจสอบว่าสตริงที่กำหนดเป็น Python Keyword (คำสงวน) หรือไม่ วิธีการ ใช้โมดูล keyword มาตรฐาน มี kwlist รายการคีย์เวิร์ดทั้งหมด ตัวอย่างโค้ด Python import keyword def isKeyword(word): keyword_list = keyword.kwlist return Yes if word in keyword_list else No # ทดสอบ print(isKeyword(t

  15. ตรวจสอบ Vowel Palindrome ใน Python

    โจทย์: กำหนดสตริง ลบพยัญชนะทั้งหมด ตรวจสอบว่าสตริงสระที่เหลือเป็น Palindrome หรือไม่ ตัวอย่าง Input: aeoea → สระทั้งหมด → aeoea → Palindrome ✓ อัลกอริทึม กรองเฉพาะสระ (a, e, i, o, u) ตรวจสอบ palindrome: string == string[::-1] ถ้าไม่มีสระเลย → คืนค่า -1 ตัวอย่างโค้ด Python (แก้ไขจากต้นฉบับ) def

  16. ตรวจสอบจำนวนเฉพาะ (Prime Number) ใน Python

    โจทย์: ตรวจสอบว่าตัวเลขที่กำหนดเป็นจำนวนเฉพาะหรือไม่ นิยาม 1 ที่มีตัวหารได้แค่ 1 และตัวมันเอง (2, 3, 5, 7, 11, ...) อัลกอริทึม n ≤ 1 → ไม่ใช่เฉพาะ ตรวจสอบหารได้จาก 2 ถึง n//2 (หรือ √n เพื่อประสิทธิภาพ) ถ้าหารได้ตัวไหน → ไม่ใช่เฉพาะ ไม่หารได้ทุกตัว → เป็นเฉพาะ ตัวอย่างโค้ด Python 1: for i

  17. แปลง List เป็น String ใน Python

    โจทย์: แปลงลิสต์ (List) เป็นสตริง (String) วิธีที่ 1: Loop + Concatenation (Naive) def listToString(s): str_ = for ele in s: str_ += ele return str_ print(listToString([Tutorials, Point])) # TutorialsPoint วิธีที่ 2: str.join() (แนะนำมากที่สุด) def listToString(s): retur

  18. แปลง Decimal เป็น Binary ใน Python

    โจทย์: แปลงเลขฐานสิบเป็นเลขฐานสอง (Binary) วิธีที่ 1: Recursive 1: DecimalToBinary(num // 2) print(num % 2, end=) # ทดสอบ DecimalToBinary(56) # Output: 111000 วิธีที่ 2: ใช้ bin() built-in (แนะนำ) def decimalToBinary(n): return bin(n).replace(0b, ) print(decimalToBinary(56)) #

  19. แปลง Hex String เป็น Decimal ใน Python

    โจทย์: แปลงสตริงเลขฐานสิบหก (Hexadecimal) เป็นเลขฐานสิบ (Decimal) วิธีที่ 1: ใช้ int() built-in (แนะนำ) int(hex_string, 16) แปลงโดยระบุฐาน 16 string = F res = int(string, 16) print(The decimal number associated with hexadecimal string is : + str(res)) # Output: 15 วิธีที่ 2: ใช้ ast.literal_eval

  20. โปรแกรม Python แปลงกิโลเมตรเป็นไมล์

    ในบทความนี้ เราจะเรียนรู้วิธีแก้ปัญหาตามข้อกำหนดด้านล่าง ข้อกำหนดปัญหา − เราได้รับระยะทางในกิโลเมตร และต้องแปลงเป็นไมล์ ตามที่เรารู้ 1 กิโลเมตร เท่ากับ 0.62137 ไมล์ สูตรที่ใช้ Miles = kilometer * 0.62137 มาสังเกตแนวคิดในการนำไปใช้ด้านล่าง ตัวอย่าง kilometers = 5.5 # conversion factor as 1 km =

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:114/451  20-คอมพิวเตอร์/Page Goto:1 108 109 110 111 112 113 114 115 116 117 118 119 120