ในบทความนี้ เราจะเรียนรู้โปรแกรมที่สามารถลบอักขระทั้งหมดยกเว้นตัวอักษรโดยใช้แนวคิด 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 เพื่อลบอักขระที่ไม่ใช่ตัวอักษร