Hướng dẫn how do you unzip a list in python? - làm thế nào để bạn giải nén một danh sách trong python?

Các kỹ thuật zipping, đang gán một giá trị khóa hoặc ghép nối từ hai danh sách khác nhau đã được đề cập trong nhiều bài viết trước đó, đôi khi chúng tôi có tiện ích cụ thể để thực hiện nhiệm vụ ngược. Nhiệm vụ này có thể đạt được bằng các phương pháp khác nhau.

Hãy để thảo luận về một số phương pháp để giải nén một danh sách các bộ dữ liệu.

Phương pháp số 1: Sử dụng danh sách hiểu Using List Comprehension

Sử dụng danh sách hiểu là cách tiếp cận ngây thơ nhất để thực hiện nhiệm vụ giải nén này và thường không được sử dụng để thực hiện nhiệm vụ này, nhưng phương pháp tốt để bắt đầu.

test_list = [('Akshat', Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 0____11Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 2, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 1Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8__

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 9

>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 0____6 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 2>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 3 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 4>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 5 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 6

>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 7>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 8>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 3 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 4>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 5 map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 2

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 5 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 8

Đầu ra:

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [['Akshat', 'Bro', 'is', 'Placed'], [1, 2, 3, 4]]

Phương pháp số 2: Sử dụng toán tử map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 9 và * Using map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 9 and * operator

Chủ yếu là phương pháp được sử dụng để thực hiện giải nén và hầu hết pythonic và được khuyến nghị là tốt. Phương pháp này thường được sử dụng để thực hiện nhiệm vụ này bởi các lập trình viên trên khắp. * Nhà điều hành giải nén các bộ dữ liệu vào danh sách độc lập.

test_list = [('Akshat', Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 0____11Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 2, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 1Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8__

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 9

>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 0____6 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 2>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 3 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 4>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 5 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 6

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 5 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 8

Đầu ra:

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)]

Phương pháp số 2: Sử dụng toán tử map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 9 và *
Method #3 : Using 'Akshat'9
This is yet another way that can be employed to perform this task of unzipping which is less known but indeed a method to achieve this task. This also uses the * operator to perform the basic unpacking of the list. This function is deprecated in Python >= 3 versions.

test_list = [('Akshat', Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 0____11Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 2, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 1Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6, Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8__

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 6 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 9

>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 0____6 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 2>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 3 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 4>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 5 >>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)] 6

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 5map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 5 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 7 Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 8map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 8

Đầu ra:

Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)]

Sử dụng Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 29:

>>> l = [(1,2), (3,4), (8,9)] >>> list(zip(*l)) [(1, 3, 8), (2, 4, 9)]

Hàm map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 9 kết hợp các phần tử từ tất cả các đầu vào, bắt đầu bằng các giá trị thứ nhất, sau đó là thứ hai, v.v. bằng cách sử dụng Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 31, bạn áp dụng tất cả các bộ dữ , sau đó Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 4 với Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 2 và Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 40. Chúng xảy ra tương ứng độc đáo với các cột hoặc chuyển vị của Original list is : [('Akshat', 1), ('Bro', 2), ('is', 3), ('Placed', 4)] Modified list is : [('Akshat', 'Bro', 'is', 'Placed'), (1, 2, 3, 4)] 32.

map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists 9 sản xuất bộ dữ liệu; Nếu bạn phải có các đối tượng danh sách có thể thay đổi, chỉ cần 'Akshat'9, các bộ dữ liệu để danh sách hoặc sử dụng danh sách hiểu biết để tạo danh sách danh sách:

map(list, zip(*l)) # keep it a generator [list(t) for t in zip(*l)] # consume the zip generator into a list of lists

Làm cách nào để giải nén một danh sách có khóa kéo trong Python?

Sử dụng zip () với toán tử * để giải nén danh sách các bộ dữ liệu..
Zipped = [("A", 1), ("B", 2)].
đã giải nén_object = zip (*zipped).
unzipped_list = list (unzipped_object) các phần tử được ghép nối riêng biệt trong tuple để tách các bộ dữ liệu ..
print(unzipped_list).

Làm thế nào để bạn giải nén trong Python?

Nhập mô -đun zipfile Tạo đối tượng tệp ZIP bằng lớp ZipFile.Gọi phương thức extractall () trên đối tượng tệp zip và truyền đường dẫn nơi các tệp cần được trích xuất và trích xuất tệp cụ thể có trong zip.Create a zip file object using ZipFile class. Call the extractall() method on zip file object and pass the path where the files needed to be extracted and Extracting the specific file present in the zip.

Zip (*) làm gì trong Python?

Hàm zip () của Python được định nghĩa là zip (*tererables).Chức năng lấy Iterables làm đối số và trả về trình lặp.Iterator này tạo ra một loạt các bộ dữ liệu chứa các yếu tố từ mỗi phần có thể.ZIP () có thể chấp nhận bất kỳ loại có thể lặp lại, chẳng hạn như tệp, danh sách, bộ dữ liệu, từ điển, bộ, v.v.takes in iterables as arguments and returns an iterator. This iterator generates a series of tuples containing elements from each iterable. zip() can accept any type of iterable, such as files, lists, tuples, dictionaries, sets, and so on.

Làm cách nào để giải nén một danh sách các bộ dữ liệu trong Python?

Những điều cơ bản của việc giải nén một tuple và một danh sách.Nếu bạn viết các biến ở phía bên trái được phân tách bằng dấu phẩy, các phần tử của một tuple hoặc danh sách ở phía bên phải được gán cho mỗi biến.....
Giải nén với _ (nhấn mạnh) theo quy ước, các giá trị không cần thiết có thể được gán cho nhấn mạnh _ trong Python.....
Giải nén với * (dấu hoa thị).

Chủ đề