สำหรับการจัดการข้อมูลโดยใช้ python เราอาจพบสถานการณ์ที่เรามีสตริงที่มีตัวเลขอยู่ในรายการ เพื่อให้สามารถคำนวณได้ เราจะต้องเปลี่ยนสตริงเป็นตัวเลข ในบทความนี้เราจะมาดูวิธีการเปลี่ยนสตริงเป็นตัวเลขภายในรายการ
ด้วย int
ฟังก์ชัน int สามารถใช้กับองค์ประกอบสตริงของรายการที่แปลงเป็นจำนวนเต็มได้ เราต้องออกแบบ for loops อย่างระมัดระวังเพื่อผ่านแต่ละองค์ประกอบและได้ผลลัพธ์แม้ว่าจะมีหลายสตริงในองค์ประกอบเดียว
ตัวอย่าง
listA = [['29','12'], ['25'], ['70']] # Given lists print("Given list A: ", listA) # Use int res = [[int(n) for n in element] for i in listA for element in i] # Result print("The numeric lists: ",res)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list A: [['29', '12'], ['25'], ['70']] The numeric lists: [[2, 9], [1, 2], [2, 5], [7, 0]]
พร้อมแผนที่
เรายังสามารถใช้ฟังก์ชันแผนที่ซึ่งจะใช้ฟังก์ชันที่กำหนดซ้ำแล้วซ้ำอีกกับพารามิเตอร์แต่ละตัวที่ให้มากับฟังก์ชันนี้ เราสร้าง for loop ซึ่งดึงองค์ประกอบจากแต่ละรายการภายใน วิธีการนี้ใช้ไม่ได้หากรายการภายในมีหลายองค์ประกอบอยู่ภายใน
ตัวอย่าง
listA = [['29'], ['25'], ['70']] # Given lists print("Given list A: ", listA) # Use map res = [list(map(int, list(elem[0]))) for elem in listA if elem ] # Result print("The numeric lists: ",res)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list A: [['29'], ['25'], ['70']] The numeric lists: [[2, 9], [2, 5], [7, 0]]