Hướng dẫn iterate through nested tuple python - lặp qua python tuple lồng nhau

Tôi chưa quen với Python và cố gắng tìm ra cách lặp lại thông qua một tuple lồng nhau.

Đây là một tuple:

x=[[1,2,['a', 'b', [6,9,7]], 6,['$','@']]]

Tôi đang cố gắng lặp lại để tôi có thể in từng giá trị riêng biệt như:

1
2
a
b
6
9
7
6
$
@

Đây là mã của tôi, vui lòng cho tôi biết tôi đang làm gì sai ở đây:

x=[[1,2,['a', 'b', [6,9,7]], 6,['$','@']]]
f=0
for y in x:
   print[x[f]]
   f = f+1

Bộ dữ liệu Python là bộ sưu tập các mặt hàng. Chúng là các đối tượng giống như mảng bất biến, đặt hàng và được lập chỉ mục cho phép trùng lặp. Bài viết này là tất cả về cách lặp lại thông qua các bộ dữ liệu. Bài đăng này bao gồm,
This post is all about how to iterate through tuples. This post covers,

  • làm thế nào để lặp qua các yếu tố của một tuple;
  • Cách lặp lại bằng cách sử dụng các chỉ mục trong các bộ dữ liệu;
  • cách lặp lại bằng cách sử dụng các điều tra viên trong một tuple;
  • làm thế nào để lặp qua các phần tử tuple trong một phạm vi;
  • bỏ qua các mục khi lặp;
  • làm thế nào để thực hiện các lần lặp lại trong một tuple, và;
  • Làm thế nào để lặp lại và giải nén các bộ dữ liệu lồng nhau cùng một lúc.

Liên quan: Làm thế nào để tăng tốc các đường ống dữ liệu Python lên tới 91x? How to Speed up Python Data Pipelines up to 91X?

Làm thế nào để lặp qua các yếu tố của một tuple?

Tuples giống như bất kỳ sự khác biệt nào khác trong Python. Bạn có thể trực tiếp lặp qua các yếu tố của chúng trong một vòng lặp.

harry_potter_charectors = [
    "Harry Potter",
    "Hermione Granger",
    "Ron Weasley",
    "Severus Snape",
    "Albus Dumbledore",
]

for role in harry_potter_charectors:
    print[role]

Bạn cũng có thể lặp qua các yếu tố tuple bên trong một danh sách hiểu. Nó thường là cách ngắn gọn và thuận tiện nhất để lặp lại trong Python.

harry_potter_charectors = [
    "Harry Potter",
    "Hermione Granger",
    "Ron Weasley",
    "Severus Snape",
    "Albus Dumbledore",
]

[print[role] for role in harry_potter_charectors]

Làm thế nào để lặp lại bằng cách sử dụng các chỉ mục trong các bộ dữ liệu?

Vì các bộ dữ liệu được đặt hàng và lập chỉ mục, chúng ta có thể truy cập các phần tử Tuple bằng các chỉ mục của chúng. Nếu chúng ta có thể tạo ra một tập hợp các chỉ mục, chúng ta có thể sử dụng chúng để lặp lại các phần tử Tuple.

Chẳng hạn, chúng ta có thể sử dụng hàm phạm vi để tạo một tập hợp các số và lặp lại trên chúng. Sau đó, chúng ta có thể sử dụng chỉ mục để truy cập phần tử cụ thể của tuple.

Một mẹo tiện dụng khác ở đây là sử dụng chiều dài của tuple làm giới hạn giới hạn trên của hàm phạm vi của chúng tôi. Bằng cách này, chúng ta có thể lặp qua tất cả các yếu tố trong một tuple.

# Loop through an index range. We set the upper limit to the length of the tuple.
for i in range[0, len[harry_potter_charectors]]:

    # Get the tuple element by index
    role = harry_potter_charectors[i]

    print[role]

Làm thế nào để lặp bằng cách sử dụng các điều tra viên trong một tuple?

Một kỹ thuật hữu ích khác trong Python là sử dụng các điều tra viên khi lặp qua một tuple. Các điều tra viên cho phép chúng tôi truy cập cả phần tử và chỉ mục của nó cùng một lúc bên trong một vòng lặp.

for ix, item in enumerate[harry_potter_charectors]:

    print[f"{item} is the charector # {ix+1} in Harry Potter"]

>>> Harry Potter is the charector # 1 in Harry Potter
>>> Hermione Granger is the charector # 2 in Harry Potter
>>> Ron Weasley is the charector # 3 in Harry Potter
>>> Severus Snape is the charector # 4 in Harry Potter
>>> Albus Dumbledore is the charector # 5 in Harry Potter

Làm thế nào để bỏ qua các mục khi lặp qua một tuple?

Đôi khi, chúng ta có thể chỉ cần lặp qua mọi yếu tố khác của một tuple. Nếu không phải là các yếu tố có khoảng cách cố định. Nếu vậy, chúng ta có thể cắt phần mềm trước khi lặp lại chúng.

Đây là một ví dụ.

harry_potter_charectors = [
    "Harry Potter",
    "Hermione Granger",
    "Ron Weasley",
    "Severus Snape",
    "Albus Dumbledore",
]

for role in harry_potter_charectors[::2]:
    print[role]

>>> Harry Potter
>>> Ron Weasley
>>> Albus Dumbledore

Làm thế nào để lặp qua các phần tử tuple trong một phạm vi?

Nếu bạn không muốn lặp qua tất cả các yếu tố nhưng muốn bắt đầu và kết thúc giữa việc lặp lại, bạn có thể sử dụng một phạm vi. Về cơ bản, chúng tôi đang lặp đi qua một lát tuple của chúng tôi.

for role in harry_potter_charectors[0:3]:
    print[role]

>>> Harry Potter
>>> Hermione Granger
>>> Ron Weasley

Lặp lại trên các bộ dữ liệu lồng nhau.

Tuples có thể giữ bất kỳ dữ liệu trong đó. Có nghĩa là nó có thể có các bộ dữ liệu khác bên trong một tuple. Chúng tôi gọi chúng là những bộ dữ liệu lồng nhau.

Bộ dữ liệu lồng nhau rất phổ biến trong Python. Chúng tôi cũng có thể thực hiện một lần lặp lồng nhau trên chúng.

harry_potter_hose_charactors = [
    ["Harry Potter", "Hermione Granger", "Ron Weasley"],
    ["Severus Snape", "Draco Malfoy", "Lord Voldemort"],
    ["Luna Lovegood", "Quirinus Quirrell", "Cho Chang"],
    ["Hannah Abbott", "Fat Friar Ghost", "Teddy Lupin"],
]

for house in harry_potter_hose_charactors[0:3]:

    for charactor in house:

        print[charactor]

>>> Harry Potter
>>> Hermione Granger
>>> Ron Weasley
>>> Severus Snape
>>> Draco Malfoy
>>> Lord Voldemort
>>> Luna Lovegood
>>> Quirinus Quirrell
>>> Cho Chang

Lặp lại và giải nén các bộ dữ liệu lồng nhau cùng một lúc

Chúng ta có thể kết hợp bộ giải mã tuple trên các bộ dữ liệu lồng nhau.

Liên quan: Bộ dữ liệu trong Python là gì? Và mọi thứ bạn nên biết về họ. What Are Tuples in Python? And Everything You Should Know About Them.

Vòng lặp ngoài cùng là một vòng lặp thường xuyên. Bên trong họ, chúng tôi sử dụng việc giải nén Tuple thay vì lặp lại qua các yếu tố một lần nữa. Chúng tôi có thể gán chúng cho các biến và truy cập chúng trong mã.

Nếu bất kỳ phần tử tuple chưa đóng gói nào là một tuple khác [các bộ dữ liệu được lồng sâu] và chúng tôi cũng muốn lặp lại phần tử của nó, chúng tôi cũng có thể làm điều đó.

1
2
a
b
6
9
7
6
$
@
0

Bài viết liên quan:

Làm thế nào để chuyển đổi một danh sách thành một chuỗi trong Python?

Làm thế nào để tìm chỉ mục của một phần tử trong danh sách trong Python?

Làm thế nào để bạn lặp lại thông qua một tuple lồng nhau trong Python?

Cách dễ nhất là sử dụng hai lần lồng cho các vòng. Vòng ngoài tìm nạp từng bộ tuple và vòng bên trong đi qua từng vật phẩm từ tuple. Inner in [] hàm end = '' để in tất cả các mục thành một bộ trong một dòng. Một bản in khác [] giới thiệu dòng mới sau mỗi tuple.employ two nested for loops. Outer loop fetches each tuple and inner loop traverses each item from the tuple. Inner print[] function end=' ' to print all items in a tuple in one line. Another print[] introduces new line after each tuple.

Bạn có thể lặp lại thông qua một python tuple?

Chúng ta có thể lặp lại các bộ dữ liệu bằng cách sử dụng một vòng lặp đơn giản.Chúng ta có thể thực hiện các hoạt động trình tự phổ biến trên các bộ dữ liệu như lập chỉ mục, cắt, nối, nhân, nhận tối thiểu, giá trị tối đa, v.v.. We can do common sequence operations on tuples like indexing, slicing, concatenation, multiplication, getting the min, max value and so on.

Làm thế nào chúng ta có thể lặp lại thông qua danh sách các bộ dữ liệu trong Python?

Bạn có thể lặp qua các mục danh sách bằng cách sử dụng vòng lặp thời gian.Sử dụng hàm Len [] để xác định độ dài của tuple, sau đó bắt đầu ở 0 và lặp theo cách của bạn thông qua các mục Tuple bằng cách tham khảo các chỉ mục của chúng.Hãy nhớ tăng chỉ số lên 1 sau mỗi lần lặp.by using a while loop. Use the len[] function to determine the length of the tuple, then start at 0 and loop your way through the tuple items by refering to their indexes. Remember to increase the index by 1 after each iteration.

Làm thế nào để bạn truy cập các yếu tố của một tuple trong Python?

Python - Các mục truy cập Tuple..
Truy cập các mục Tuple.Bạn có thể truy cập các mục Tuple bằng cách tham khảo số chỉ mục, bên trong dấu ngoặc vuông: ....
Lập chỉ mục tiêu cực.Lập chỉ mục tiêu cực có nghĩa là bắt đầu từ cuối.....
Phạm vi của các chỉ mục.....
Phạm vi của các chỉ số tiêu cực.....
Kiểm tra xem mục có tồn tại không ..

Bài Viết Liên Quan

Chủ Đề