Hướng dẫn python unpack tuple of unknown length - python giải nén bộ dữ liệu có độ dài không xác định
Tôi có chức năng nhỏ tiện dụng này: Show
Ví dụ:
Cũng hoạt động với ít đối số hơn:
Đáp lại nhận xét, bạn cũng có thể xác định:
và sử dụng nó như thế này:
Vấn đềBạn muốn giải nén một chuỗi (danh sách, tuple, đặt ra) thành các biến riêng biệt nhưng bạn không biết độ dài của chuỗi. Bây giờ nếu bạn thử giải nén trình tự thành các biến, nó dài hơn số lượng biến, Python đã ném một lỗi quá nhiều giá trị để giải nén.list, tuple, set…) into separate variables but you don’t know the length of the sequence. Now if you try unpacking the sequence into variables it is longer than the number of variables, python throws an error “too many values to unpack”. Dung dịchPython Hồi Star Biểu thức của ngôi sao
In [1]: record = ['John Doe', 50, '', ''...]In [2]: name, age, *emails = recordIn [3]: print(name) Xem xét một ví dụ khác. Bạn có một danh sách các tên và bạn không biết có bao nhiêu tên có thể nằm trong danh sách, nhưng bạn chỉ quan tâm đến hai tên đầu tiên và hai tên cuối cùng, Python Star Expressions lại đến giải cứu! In [1] names = ['William', 'Jamie', 'Susan', 'Allison', ... 'Michael', 'David', 'Christian']In [2]: first, second, *others, third, fourth = namesIn [3]: print(first, second, third, fourth) Điều quan trọng cần lưu ý là biến được sao chép, ví dụ: 0 sẽ luôn là một danh sách ngay cả khi không có mục nào được giải nén khỏi chuỗi. Để minh họa:# you have a list of numbers which could contain four of more numbers Mở rộng không thể giải nén được Trong bài viết trước của tôi, tôi đã giải thích cách giải nén chuỗi phần tử n trong để tách n biến bằng Python. (tức là bạn được yêu cầu biết chính xác có bao nhiêu phần tử theo thứ tự để giải nén) Hôm nay, tôi sẽ giải thích phải làm gì khi bạn không biết có bao nhiêu biến để giải nén hoặc bạn chỉ muốn giải nén một số yếu tố khỏi một chuỗi. Điều này được thực hiện khi đặt toán tử * trước tên biến bắt buộc. Điều xảy ra ở đây là biến với toán tử * lấy tất cả các phần tử còn lại sau khi các biến khác được gán với các phần tử tương ứng của chúng. Đủ Chit-Chat. Hãy để đi sâu vào một số ví dụ. Giả sử có một tuple có chứa hồ sơ sinh viên Tom. Nó có tên Tom, email và điểm số của anh ấy. Tuple này có thể được giải nén như dưới đây. Như bạn có thể thấy tất cả các lớp được giải nén vào biến ‘lớp, vì chúng tôi đã sử dụng‘**. Đây là một ví dụ khác: Danh sách chứa các GPA hiện tại và trước đó được giải nén thành hai biến.Có những lúc bạn cảm thấy như bạn không muốn tất cả các yếu tố này và chỉ cần một số trong số chúng. Vào những thời điểm này, điều dễ dàng nhất và phổ biến nhất là sử dụng một biến số vứt đi với toán tử *. Biến số vứt bỏ phổ biến nhất là ‘_. (Xin lưu ý rằng bạn có thể sử dụng bất kỳ tên biến nào cho mục đích này) Chỉ các yếu tố cần thiết được giải nénSử dụng * Cú pháp đặc biệt hữu ích nếu bạn có danh sách các bộ dữ liệu với nhiều độ dài khác nhau và muốn giải nén nó. Ở đây danh sách L có hai bộ dữ liệu có chiều dài 3 và 2 tương ứng. Bằng cách sử dụng * cả hai bộ dữ liệu đã được giải nén. Bonus!!!Phương pháp này có thể được kết hợp với các toán tử chuỗi như chia, theo thứ tự để tách và giải nén một chuỗi đồng thời. Tách và giải nén chuỗi đồng thời.Bạn có thể giải nén một tuple trong Python không?Trong các bộ dữ liệu python có thể được giải nén bằng cách sử dụng một hàm trong bộ hàm chức năng được truyền và trong các giá trị chức năng được giải nén vào biến bình thường.tuples can be unpacked using a function in function tuple is passed and in function values are unpacked into normal variable.
Có thể giải nén có thể trong một tuple?Trong các bộ dữ liệu python có thể được giải nén bằng cách sử dụng một hàm trong bộ tple được truyền và trong hàm, các giá trị được giải nén thành một biến bình thường.Mã sau đây giải thích cách xử lý một số lượng đối số tùy ý.Càng*_ _ được sử dụng để chỉ định số lượng đối số tùy ý trong tuple.
Làm thế nào để bạn chia một giá trị tuple trong Python?Để phân chia một tuple, chỉ cần liệt kê các tên biến được phân tách bằng dấu phẩy ở phía bên trái của một dấu hiệu bằng, và sau đó là một tuple ở phía bên phải.list the variable names separated by commas on the left-hand side of an equals sign, and then a tuple on the right-hand side.
Làm thế nào để tôi giải nén một tuple trong một vòng lặp?Giải nén một tuple trong một vòng lặp trong python số lượng biến ở phía bên trái hoặc trước khi dấu bằng phải bằng chiều dài của tuple hoặc danh sách.Ví dụ: nếu một tuple có 5 phần tử, thì mã để giải nén nó sẽ như sau.Chúng ta có thể sử dụng cùng một cú pháp để giải nén các giá trị trong vòng lặp cho vòng lặp.The number of variables on the left side or before the equals sign should equal the length of the tuple or the list. For example, if a tuple has 5 elements, then the code to unpack it would be as follows. We can use the same syntax to unpack values within a for loop. |