Python xử lý nhiều kiểu dữ liệu, đôi khi list xuất hiện dưới dạng chuỗi. Bài viết trình bày cách chuyển chuỗi thành list.
Sử dụng strip và split
Dùng strip() bỏ dấu ngoặc vuông, sau đó split() với dấu phẩy làm tham số để tạo list từ chuỗi.
Ví dụ
stringA = "[Mon, 2, Tue, 5,]" # Chuỗi cho trước
print("Given string", stringA)
print(type(stringA))
# Chuỗi thành list
res = stringA.strip('][').split(', ') # Kết quả và kiểu
print("final list", res)
print(type(res))
Kết quả
Chạy đoạn mã trên cho kết quả sau:
Given string [Mon, 2, Tue, 5,] final list ['Mon', '2', 'Tue', '5,']
Sử dụng json.loads
Module json chuyển trực tiếp từ chuỗi sang list. Chỉ áp dụng cho phần tử số.
Ví dụ
import json
stringA = "[21,42, 15]" # Chuỗi cho trước
print("Given string", stringA)
print(type(stringA))
# Chuỗi thành list
res = json.loads(stringA) # Kết quả và kiểu
print("final list", res)
print(type(res))
Kết quả
Chạy đoạn mã trên cho kết quả sau:
Given string [21,42, 15] final list [21, 42, 15]
Sử dụng ast.literal_eval
Module ast cung cấp literal_eval() chuyển trực tiếp chuỗi thành list. Chỉ xem xét phần tử số.
Ví dụ
import ast
stringA = "[21,42, 15]" # Chuỗi cho trước
print("Given string", stringA)
print(type(stringA))
# Chuỗi thành list
res = ast.literal_eval(stringA) # Kết quả và kiểu
print("final list", res)
print(type(res))
Kết quả
Chạy đoạn mã trên cho kết quả sau:
Given string [21,42, 15] final list [21, 42, 15]