Computer >> Máy Tính >  >> Lập trình >> Python

Chuyển đổi biểu diễn chuỗi của danh sách thành danh sách trong Python

Khi python xử lý nhiều loại dữ liệu khác nhau, chúng ta sẽ gặp phải tình huống trong đó danh sách sẽ xuất hiện dưới dạng một chuỗi. Trong bài viết này, chúng ta sẽ xem cách chuyển một chuỗi thành một danh sách.

Có dải và tách

Đầu tiên chúng tôi áp dụng phương pháp dải để loại bỏ dấu ngoặc vuông và sau đó áp dụng hàm tách. Hàm tách với dấu phẩy làm tham số của nó tạo danh sách từ chuỗi.

Ví dụ

stringA = "[Mon, 2, Tue, 5,]"
# Given string
print("Given string", stringA)
print(type(stringA))
# String to list
res = stringA.strip('][').split(', ')
# Result and its type
print("final list", res)
print(type(res))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given string [Mon, 2, Tue, 5,]
final list ['Mon', '2', 'Tue', '5,']

Với json.loads

Mô-đun json có thể thực hiện chuyển đổi trực tiếp từ chuỗi sang danh sách. Chúng tôi chỉ áp dụng hàm bằng cách truyền chuỗi dưới dạng tham số. Chúng ta chỉ có thể xem xét các yếu tố số ở đây.

Ví dụ

import json
stringA = "[21,42, 15]"
# Given string
print("Given string", stringA)
print(type(stringA))
# String to list
res = json.loads(stringA)
# Result and its type
print("final list", res)
print(type(res))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given string [21,42, 15]
final list [21, 42, 15]

Với ast.literal_eval

Mô-đun ast cung cấp cho chúng ta hàm nghĩa đen có thể chuyển đổi trực tiếp chuỗi thành một danh sách. Chúng tôi chỉ cung cấp chuỗi dưới dạng tham số cho phương thức nghĩa đen. Chúng ta chỉ có thể xem xét các yếu tố số ở đây.

Ví dụ

import ast
stringA = "[21,42, 15]"
# Given string
print("Given string", stringA)
print(type(stringA))
# String to list
res = ast.literal_eval(stringA)
# Result and its type
print("final list", res)
print(type(res))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Given string [21,42, 15]
final list [21, 42, 15]