Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

List Comprehension และ ord() ใน Python เพื่อลบอักขระที่ไม่ใช่ตัวอักษร


ในบทความนี้ เราจะเรียนรู้โปรแกรมที่สามารถลบอักขระทั้งหมดยกเว้นตัวอักษรโดยใช้แนวคิด List Comprehension และฟังก์ชัน ord() ใน Python 3.x (รวมถึงเวอร์ชันก่อนหน้า)

อัลกอริทึม

1. วนลูปผ่านสตริงที่กำหนดเพื่อตรวจสอบแต่ละอักขระ
2. เลือกเฉพาะอักขระที่อยู่ในช่วง [a-z] หรือ [A-Z]
3. ใช้ฟังก์ชัน join() เพื่อรวมอักขระที่ผ่านการทดสอบทั้งหมดเข้าด้วยกัน

ตัวอย่างโค้ด

def remchar(input):
    # ตรวจสอบอักขระพิมพ์ใหญ่และพิมพ์เล็ก
    final = [ch for ch in input if (ord(ch) in range(ord('a'), ord('z')+1, 1)) or (ord(ch) in range(ord('A'), ord('Z')+1, 1))]
    return ''.join(final)

# โปรแกรมหลัก
if __name__ == "__main__":
    input = "Tutorials@point786._/?"
    print(remchar(input))

ผลลัพธ์

Tutorialspoint

ฟังก์ชัน ord() รับอักขระเป็นอาร์กิวเมนต์และคืนค่า ASCII ที่สอดคล้องกัน ทำให้เราสามารถเปรียบเทียบได้อย่างง่ายดายและรวดเร็ว

ที่นี่เรายังใช้ List Comprehension ซึ่งช่วยให้เรากรององค์ประกอบที่จำเป็นทั้งหมดของ List และรวมเข้าด้วยกันด้วยฟังก์ชัน join() เพื่อให้ได้ผลลัพธ์ที่ต้องการ

สรุป

ในบทความนี้ เราได้เรียนรู้การใช้ List Comprehension และฟังก์ชัน ord() ใน Python เพื่อลบอักขระที่ไม่ใช่ตัวอักษร