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

แปลงรายการสตริงตัวเลขเป็นรายการจำนวนเต็มใน Python


สำหรับการจัดการข้อมูลโดยใช้ 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]]