บางครั้งลิสต์ปรากฏในรูปสตริง ต้องการแปลงกลับเป็นลิสต์จริง
ใช้ strip และ split
strip('[]') ลบวงเล็บ แล้ว split(', ') แยกสมาชิก
ตัวอย่าง
stringA = "[Mon, 2, Tue, 5,]"
print("Given string", stringA)
print(type(stringA))
res = stringA.strip('[]').split(', ')
print("final list", res)
print(type(res))
ผลลัพธ์
Given string [Mon, 2, Tue, 5,] final list ['Mon', '2', 'Tue', '5,']
ใช้ json.loads()
json.loads() แปลงสตริง JSON array เป็นลิสต์ (เฉพาะตัวเลข)
ตัวอย่าง
import json
stringA = "[21,42, 15]"
print("Given string", stringA)
print(type(stringA))
res = json.loads(stringA)
print("final list", res)
print(type(res))
ผลลัพธ์
Given string [21,42, 15] final list [21, 42, 15]
ใช้ ast.literal_eval()
ast.literal_eval() แปลงสตริง literal เป็นลิสต์ (ปลอดภัยกว่า eval)
ตัวอย่าง
import ast
stringA = "[21,42, 15]"
print("Given string", stringA)
print(type(stringA))
res = ast.literal_eval(stringA)
print("final list", res)
print(type(res))
ผลลัพธ์
Given string [21,42, 15] final list [21, 42, 15]