เพื่อจุดประสงค์นี้ ให้เราใช้อ็อบเจกต์พจนานุกรมที่มีตัวเลขเป็นคีย์ และแทนค่าคำที่เป็นค่า -
dct={'0':'zero','1':'one','2':'two','3':'three','4':'four', '5':'five','6':'six','7':'seven','8':'eight','9':'nine'
เริ่มต้นวัตถุสตริงใหม่
newstr=''
ใช้ for loop สำรวจแต่ละอักขระ ch จากสตริงอินพุตที่ตรวจสอบว่าเป็นตัวเลขหรือไม่โดยใช้ฟังก์ชัน isdigit()
หากเป็นตัวเลข ใช้เป็นคีย์และค้นหาค่าที่เกี่ยวข้องจากพจนานุกรมและผนวกเข้ากับ newstr หากไม่ผนวกอักขระ ch เข้ากับ newstr รหัสที่สมบูรณ์มีดังนี้:
string='I have 3 Networking books, 0 Database books, and 8 Programming books.' dct={'0':'zero','1':'one','2':'two','3':'three','4':'four', '5':'five','6':'six','7':'seven','8':'eight','9':'nine'} newstr='' for ch in string: if ch.isdigit()==True: dw=dct[ch] newstr=newstr+dw else: newstr=newstr+ch print (newstr)
ผลลัพธ์เป็นไปตามที่ต้องการ
I have three Networking books, zero Database books, and eight Programming books.