Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo danh sách các danh sách chứa dữ liệu kiểu chuỗi. Các danh sách con cũng là kiểu chuỗi và có thể chứa số hoặc chuỗi làm phần tử.
Sử dụng strip() và split()
Chúng ta sử dụng hai phương pháp này để trước tiên tách các danh sách, sau đó chuyển đổi từng phần tử của danh sách thành chuỗi.
Ví dụ
list1 = [ '[0, 1, 2, 3]', '["Mon", "Tue", "Wed", "Thu"]' ]
print("Danh sách ban đầu là : \n" + str(list1))
print("\n")
# Sử dụng strip() + split()
result = [k.strip("[]").split(", ") for k in list1]
print("Chuyển đổi danh sách chuỗi thành danh sách lồng nhau : \n" + str(result))
Kết quả
Chạy đoạn code trên cho kết quả sau:
Danh sách ban đầu là : ['[0, 1, 2, 3]', '["Mon", "Tue", "Wed", "Thu"]'] Chuyển đổi danh sách chuỗi thành danh sách lồng nhau : [['0', '1', '2', '3'], ['"Mon"', '"Tue"', '"Wed"', '"Thu"']]
Sử dụng cắt chuỗi (slice) và split()
Trong cách tiếp cận này, chúng ta sẽ sử dụng cắt chuỗi rồi tách chuỗi để lấy danh sách các danh sách. Hàm split được áp dụng cùng với vòng lặp for.
Ví dụ
list1 = [ '[0, 1, 2, 3]', '["Mon", "Tue", "Wed", "Thu"]' ]
print("Danh sách ban đầu là : \n" + str(list1))
print("\n")
# Sử dụng split()
result = [i[1:-1].split(', ') for i in list1]
print("Chuyển đổi danh sách chuỗi thành danh sách lồng nhau : \n" + str(result))
Kết quả
Chạy đoạn code trên cho kết quả sau:
Danh sách ban đầu là : ['[0, 1, 2, 3]', '["Mon", "Tue", "Wed", "Thu"]'] Chuyển đổi danh sách chuỗi thành danh sách lồng nhau : [['0', '1', '2', '3'], ['"Mon"', '"Tue"', '"Wed"', '"Thu"']]