Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chuyển đổi danh sách chuỗi thành danh sách tuple trong Python

Khi thao tác dữ liệu Python, có thể gặp danh sách chứa số dưới dạng chuỗi. Cần chuyển list of strings thành tuples.

Sử dụng map và eval

Dùng map() áp dụng eval() cho từng phần tử list, lưu kết quả vào list.

Ví dụ

listA = ['21, 3', '13, 4', '15, 7']  # Danh sách cho trước
print("Given list : \n", listA)
# Sử dụng eval
res = list(map(eval, listA))  # Kết quả
print("List of tuples: \n", res)

Kết quả

Chạy đoạn mã trên cho kết quả sau:

Given list : ['21, 3', '13, 4', '15, 7'] List of tuples: [(21, 3), (13, 4), (15, 7)]

Sử dụng map và split

Dùng split() tách phần tử bằng dấu phẩy thành 2 phần tử riêng biệt. Sau đó áp dụng tuple() và map(int, ...) để tạo tuple chứa cặp số.

Ví dụ

listA = ['21, 3', '13, 4', '15, 7']  # Danh sách cho trước
print("Given list : \n", listA)
# Sử dụng split
res = [tuple(map(int, sub.split(', '))) for sub in listA]  # Kết quả
print("List of tuples: \n", res)

Kết quả

Chạy đoạn mã trên cho kết quả sau:

Given list : ['21, 3', '13, 4', '15, 7'] List of tuples: [(21, 3), (13, 4), (15, 7)]