Vòng lặp lồng nhau Bài tập Python

Vòng lặp bên trong Vòng lặp

Một vòng lặp lồng nhau là một vòng lặp bên trong một vòng lặp

"vòng lặp bên trong" sẽ được thực hiện một lần cho mỗi lần lặp lại "vòng lặp bên ngoài"

Ví dụ

In từng tính từ cho mỗi loại trái cây

adj = ["đỏ", "to", "ngon"]
trái cây = ["táo", "chuối", "anh đào"]

cho x trong adj.
  cho y trong trái cây.
    print[x, y]

Tự mình thử »


Vòng lặp là một khái niệm rất mạnh mẽ trong lập trình và nó cho phép thực hiện một tác vụ trong các lần lặp. Lặp lại một nhiệm vụ hoặc một chức năng trong một số lần mong muốn có thể mang lại nhiều lợi ích

Trong bài học này, chúng ta sẽ xem xét Python For Loops

Nó có thể được giải thích tốt nhất qua một ví dụ về Python

>>> for iterator in iterable:
>>>     execute task

Theo nghĩa đơn giản hóa, chúng ta thấy ba phần hơi tầm thường, đó là “for”, “in” và “. ” trong đoạn mã nhỏ ở trên. Đây là một phần của cú pháp vòng lặp for trong Python và chúng không bao giờ thay đổi. Chúng tôi cũng thấy ba phần có thể thay đổi trong mọi vòng lặp for khác nhau. đó là

  • trình vòng lặp. là một biến chúng tôi đặt tên và nó được sử dụng để lặp qua bộ sưu tập [danh sách, dict, tuple, đối tượng phạm vi hoặc một cái gì đó thuộc loại đó]
  • lặp đi lặp lại. là một chuỗi hoặc tập hợp mà qua đó việc lặp lại diễn ra trong các vòng lặp for
  • nhiệm vụ. đây là phần mã thực thi một tác vụ hoặc một chức năng. Đó cũng là những gì xảy ra trong mỗi lần lặp lại trong vòng lặp. Ngoài ra, xin lưu ý rằng phần này luôn được thụt vào bởi một ký tự tab [đôi khi là 4 ký tự khoảng trắng thay vì tab trên một số nền tảng]

Được sử dụng ở đâu?

Vòng lặp là công cụ tuyệt vời để xử lý các tác vụ lặp đi lặp lại. Chúng có thể được sử dụng cho

  • Xử lý từng phần tử của một chuỗi
  • In từng phần tử của một chuỗi
  • Thực thi một hàm hoặc một chương trình khác cho từng phần tử trong một chuỗi
  • tích lũy dữ liệu
  • Thực hiện phân tích thông qua Khung dữ liệu trong khoa học dữ liệu

Chỉ đưa ra một vài ví dụ

Đối với các vòng lặp cũng thường được sử dụng trong các chương trình, thư viện, máy chủ khác ở phía sau, v.v. chúng tôi thường không thấy điều này vì nó nằm trong mã nguồn và chúng tôi sử dụng sản phẩm cuối cùng. Nếu bạn kiểm tra mã nguồn cho các thư viện mã nguồn mở như pandas, numpy, scipy, matplotlib, scikit-learning, PIL, v.v. bạn rất có thể sẽ thấy nhiều vòng lặp for được sử dụng đằng sau bức màn

Cú pháp do[s]

1] Dòng đầu tiên bắt đầu bằng for

2] Có dấu hai chấm[. ] ở cuối dòng đầu tiên

3] Sau dòng đầu tiên, các dòng tiếp theo phải được thụt lề

Cú pháp không [s]

1] Đừng quên dấu hai chấm [. ] ở cuối dòng đầu tiên

2] Đừng quên thụt lề sau dòng đầu tiên

ví dụ 1. In một giá trị với vòng lặp for

for iter in [1,2,3]:
    print["Hello World!"]

“Xin chào thế giới. ”
“Xin chào thế giới. ”
“Xin chào thế giới. ”

In this example is just a variable we named. Python list has 3 elements [1,2,3]. So for each value [or iter] “Hello World!” is printed once. 

ví dụ 2. Đối với vòng lặp với chức năng phạm vi

Các đối tượng phạm vi có thể lặp lại hoàn hảo khi bạn cần một dãy số. Sử dụng hàm phạm vi chúng ta có thể tạo một đối tượng phạm vi và sử dụng vòng lặp for của Python, chúng ta có thể lặp qua đối tượng đó. Cũng trong ví dụ này, sử dụng chức năng in, chúng tôi đang thực hiện lệnh in trong mỗi lần lặp nhưng nó cũng có thể là một số tác vụ khác

Kiểm tra ví dụ

for iter in range[3]:
    print[iter]

0
1
2

Chúng tôi đang in trực tiếp trình lặp lấy các giá trị khác nhau trong quá trình lặp của nó thông qua đối tượng phạm vi [3] bao gồm 0,1 và 2

Chúng tôi có một bài học Python về hàm phạm vi trong trường hợp bạn cần xem lại

Để luyện tập cho các vòng lặp, bạn có thể thử vẽ các ngôi sao bằng con rùa. Nhiệm vụ thú vị này bao gồm việc sử dụng cả vòng lặp và hàm phạm vi

ví dụ 3. Lặp qua danh sách bằng vòng lặp for trong Python

Hãy làm điều gì đó phức tạp hơn một chút. Công ty trái cây tươi này thêm ba chữ số vào các mặt hàng trong kho của họ để cho biết tình trạng sẵn có. 999 có nghĩa là có sẵn cho bất kỳ số lượng nào trong khi 000 có nghĩa là không có sẵn

Bạn có thể kiểm tra ba chữ số cuối của mỗi mặt hàng trong danh sách đầu tiên và thêm tên [không có chữ số] của các mặt hàng có sẵn vào danh sách thứ hai để đặt hàng không?

lst = ["apple999", "kiwi999", "strawberry000", "tangerine999"]
lst2 = []

for iter in lst:
    if int[iter[-3:]] == 999:
        [lst2.append[iter[:-3]]]

print[lst2]

táo
kiwi
dâu tây

Ở đây chúng ta đang thực hành lại nhiều khái niệm Python cơ bản. Bắt đầu với danh sách Python và vòng lặp Python for, chúng ta có ký hiệu cắt, phương thức danh sách, câu lệnh điều kiện và toán tử Python

Nếu Vòng lặp là một khái niệm mới đối với bạn, chúng tôi thực sự khuyên bạn nên sao chép lst và lst2 và cố gắng tự viết mã phần còn lại ít nhất một vài lần. Bạn thậm chí có thể làm điều này như một thói quen buổi sáng trong vài ngày/tuần cho đến khi nó trở thành một bản năng rất tự nhiên đối với bạn. Điều này sẽ đảm bảo cho bạn có được kỹ năng lặp for vững chắc trong suốt phần đời còn lại của mình

Ví dụ 4. Đối với vòng lặp với chức năng phạm vi

a = 10
for iter in range[5]:
    a = a+5

    print[a]

35

Chúng tôi đã tạo một biến có giá trị ban đầu là 10. Và mỗi khi vòng lặp chạy, a được gán cho giá trị ban đầu của nó cộng với 5

Trong lần lặp tiếp theo, giá trị ban đầu của nó trở thành cộng 5, v.v. Sau tổng cộng 5 lần lặp, vòng lặp dừng và giá trị cuối cùng của a là 35

Ngoài ra, hàm print[] không nằm trong vòng lặp nên không có gì được in trong vòng lặp, nhưng giá trị của một giá trị sẽ được cập nhật phía sau bức màn với mỗi lần lặp

Lời khuyên

1- Vòng lặp for thường hữu ích hơn khi bạn biết chính xác thời gian lặp trước vòng lặp. Khi bạn đang lặp qua các chuỗi như danh sách, bộ dữ liệu, từ điển, chuỗi và phạm vi, vì bạn đã biết độ dài của chuỗi nên việc sử dụng vòng lặp for thường hợp lý hơn

Chức năng. len

Chúng tôi sẽ sử dụng chức năng len tiện dụng của Python và tìm ra độ dài của từng chuỗi trong danh sách

Ví dụ 5

Hãy xem so sánh độ dài tên của những loại ớt Mexico thơm ngon này như thế nào

Hãy xem ví dụ này, chúng tôi đang sử dụng hàm len để in độ dài của từng mục trong quá trình lặp

for i in ["Jalapeno", "Serrano"]:
    print[len[i]]

8
7

Người chiến thắng là Jalapeno

Khái niệm nâng cao [Tùy chọn]

Vòng lặp lồng nhau

1- Trong một số trường hợp, bạn có thể cần cấu trúc vòng lặp lồng nhau. Trước đây chúng ta đã thấy rằng các danh sách có thể bao gồm nhiều loại dữ liệu khác nhau bao gồm cả các danh sách khác. Hãy xem một ví dụ về danh sách lồng nhau và vòng lặp for lồng nhau

Ví dụ 6. Vòng lặp lồng nhau trong Python

Ở đây chúng tôi có một danh sách cha bao gồm hai danh sách lồng nhau trong đó. Hãy xem một ví dụ mã Python đơn giản nơi chúng ta lặp qua các phần tử bên trong của danh sách bên trong

lst = [[1,2,3], ["land", "sea", "sky"]]
for i in lst:
    for j in i:
        print[j]

1
2
3
đất liền
biển
sky

  • Trong lần lặp đầu tiên, tôi được gán cho phần tử đầu tiên trong a [là danh sách. [1,2,3]] và sau đó j được gán cho từng phần tử trong i [là các số nguyên. 1,2 và 3]
  • Trong lần lặp thứ hai, i được gán cho phần tử thứ hai trong a [[“land”, “sea”, “sky”]] ​​và sau đó j được gán cho từng phần tử trong i [“land”, “sea”, “sky”

Bây giờ, bạn muốn in ở định dạng sau thì sao?
1. đất
2. biển
3. sky
Bạn có thể đạt được điều này mà không cần xem ví dụ bên dưới không? .

Ví dụ 7. Lặp lại danh sách lồng nhau với vòng lặp for trong Python

Hãy thử truy cập các phần tử của danh sách thứ hai bằng cách sử dụng các giá trị của danh sách đầu tiên trong quá trình lặp chỉ để giải trí và thực hành

lst = [[1,2,3], ["land", "sea", "sky"]]
for i in lst[0]:
    print[i, ": ", lst[1][i-1]]

1. đất
2. biển
3. bầu trời

  • Ở đây, điều xảy ra là các phần tử của danh sách đầu tiên đủ thuận tiện để làm cho chúng lập chỉ mục các phần tử truy cập cho danh sách thứ hai trong mã. Nhưng nếu đây không phải là trường hợp, chúng ta vẫn có thể tạo một bộ đếm phụ [có thể đặt tên là c] và truy cập các phần tử của danh sách thứ hai ở mỗi lần lặp theo cách đó

Vòng lặp for là một khái niệm vòng lặp rất tiện lợi và dễ sử dụng trong Python. Các vòng lặp cực kỳ mạnh mẽ vì chúng cho phép tự động hóa thông qua lặp lại, chúng có thể được sử dụng để xử lý các tác vụ lặp đi lặp lại, chúng có thể được sử dụng để tạo các chức năng thông minh và xử lý nhiều tác vụ khác nhau. Hãy ghé thăm bài viết này. Đối với một ví dụ Python đơn giản nhưng thực tế với For Loops

Chúng tôi có một số bài tập Python tương tác để giúp bạn thực hành chủ đề lập trình quan trọng này. Dành thời gian của bạn và đảm bảo rằng bạn cảm thấy thoải mái với các vòng lặp, đây sẽ là một bước thực sự mạnh mẽ trong tương lai viết mã tuyệt vời của bạn

Trong bài tiếp theo chúng ta sẽ tìm hiểu về vòng lặp while trong Python. Bạn sẽ thấy các vòng lặp while là một giải pháp vòng lặp tuyệt vời khác trong Python như thế nào. Các vòng lặp While hỗ trợ rất tốt cho các Vòng lặp For và chúng có thể được sử dụng để thực hiện một số loại lặp nhất định tốt hơn so với các vòng lặp for

Ví dụ về vòng lặp lồng nhau trong Python là gì?

Trong ngôn ngữ lập trình Python có hai loại vòng lặp là vòng lặp for và vòng lặp while. Sử dụng các vòng lặp này, chúng ta có thể tạo các vòng lặp lồng nhau trong Python. Các vòng lặp lồng nhau có nghĩa là các vòng lặp bên trong một vòng lặp . Ví dụ, vòng lặp while bên trong vòng lặp for, vòng lặp for bên trong vòng lặp for, v.v.

3 loại vòng lặp trong Python là gì?

Loại vòng lặp .
cho vòng lặp. Vòng lặp for trong Python được sử dụng để lặp qua một chuỗi [danh sách, bộ dữ liệu, bộ, từ điển và chuỗi]. Sơ đồ. .
Trong khi lặp lại. Vòng lặp while được sử dụng để thực hiện một tập hợp các câu lệnh miễn là một điều kiện là đúng. .
Vòng lặp lồng nhau. Nếu một vòng lặp tồn tại bên trong phần thân của một vòng lặp khác, nó được gọi là vòng lặp lồng nhau

Có giới hạn nào đối với các vòng lặp lồng nhau trong Python không?

Mặc dù Python không có giới hạn kỹ thuật để hiểu các vòng lặp for lồng nhau phức tạp, nhưng có giới hạn về con người . Nếu bạn có một đoạn mã phức tạp với nhiều vòng lặp for hoặc các hàm và điều kiện phức tạp, việc sử dụng vòng lặp for lồng nhau thực sự có thể khiến mã của bạn khó hiểu hơn.

Bạn có thể lồng vòng lặp while vào vòng lặp for Python không?

Các vòng lặp lồng nhau trong Python . Bạn có thể đặt một vòng lặp for bên trong một khoảng thời gian, hoặc một khoảng thời gian bên trong một vòng lặp for, hoặc một vòng lặp for bên trong một vòng lặp for hoặc một khoảng thời gian bên trong một khoảng thời gian .

Chủ Đề