Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while trong Python không?

Ngôn ngữ lập trình Python cho phép sử dụng một vòng lặp bên trong một vòng lặp khác. Phần sau đây cho thấy một vài ví dụ để minh họa khái niệm

cú pháp

for iterating_var in sequence:
   for iterating_var in sequence:
      statements(s)
   statements(s)

Cú pháp cho một câu lệnh vòng lặp while lồng nhau trong ngôn ngữ lập trình Python như sau -

while expression:
   while expression:
      statement(s)
   statement(s)

Lưu ý cuối cùng về cách lồng vòng lặp là bạn có thể đặt bất kỳ loại vòng lặp nào bên trong bất kỳ loại vòng lặp nào khác. Ví dụ vòng lặp for có thể nằm trong vòng lặp while hoặc ngược lại

Khi một vòng lặp while được sử dụng bên trong một vòng lặp while khác thì nó được gọi là vòng lặp while lồng nhau trong Python. Python cho phép sử dụng một vòng lặp bên trong một vòng lặp khác

while expression:             
         while expression:    
                 statement(s) 
statement(s)

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

Mã ví dụ đơn giản

i = 1
j = 5
while i < 4:
    while j < 8:
        print(i, ",", j)
        j = j + 1
        i = i + 1

đầu ra

Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while trong Python không?

Một vi dụ khac

Hiển thị bảng cửu chương sử dụng while lồng nhau trong ngôn ngữ Python

i = 1
while i <= 5:
    j = 1
    while j <= 5:
        print(i, "*", j, '=', i * j)
        j += 1
    i += 1
    print("\n")

đầu ra

1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5


2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
2 * 4 = 8
2 * 5 = 10


3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15


4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20


5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25

Hãy bình luận nếu bạn có bất kỳ nghi ngờ và đề xuất nào về chương trình vòng lặp Python While này

Ghi chú. IDE. PyCharm 2021. 3. 3 (Phiên bản cộng đồng)

cửa sổ 10

Trăn 3. 10. 1

Tất cả các Ví dụ về Python đều nằm trong Python 3, vì vậy có thể nó khác với python 2 hoặc các phiên bản nâng cấp

Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while trong Python không?

Rohit

Bằng cấp về Khoa học Máy tính và Kỹ sư. Nhà phát triển ứng dụng và có kinh nghiệm về nhiều ngôn ngữ lập trình. Đam mê công nghệ & thích học hỏi kỹ thuật

Các vòng lặp rất quan trọng trong python vì nếu không có chúng, chúng ta sẽ phải lặp lại các hướng dẫn một lần nữa, điều này có thể gây tốn thời gian cho một lập trình viên. Một vòng lặp while chỉ đơn giản là đánh giá một điều kiện nhất định và nếu nó đúng thì nó sẽ thực thi một tập hợp các câu lệnh cho đến khi điều kiện đó đúng. Nhưng nếu độ phức tạp của vấn đề tăng lên, thì cần phải chèn một vòng lặp while bên trong một vòng lặp while khác. Do đó, trong hướng dẫn này, bạn sẽ hiểu về các vòng lặp lồng nhau trong python

Cú pháp của vòng lặp lồng nhau trong khi Python

Cú pháp cơ bản của vòng lặp while lồng nhau như sau

#outer  while loop
while condition:

         #inner while loop
         while condition:
                   block of code
block of code

Các vòng lặp lồng nhau bao gồm hai thành phần cơ bản

  1. Vòng lặp While bên ngoài
  2. Vòng lặp While bên trong

Vòng lặp while bên ngoài có thể chứa nhiều vòng lặp while bên trong. Ở đây, điều kiện dẫn đến một giá trị boolean và nếu nó đúng, chỉ khi đó vòng lặp mới được thực hiện. Đối với mỗi lần lặp của vòng lặp while bên ngoài, vòng lặp bên trong sẽ được thực thi ngay từ đầu và quá trình này tiếp tục cho đến khi điều kiện của vòng lặp bên ngoài là đúng. Tương tự, vòng lặp bên trong chỉ được thực hiện nếu điều kiện của nó là đúng và khối mã được thực thi

Sơ đồ các vòng lặp lồng nhau

Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while trong Python không?
Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while trong Python không?

Sơ đồ các vòng lặp lồng nhau

Đầu tiên, điều kiện vòng lặp bên ngoài được đánh giá. Nếu nó sai, thì điều khiển sẽ nhảy đến cuối vòng lặp while bên ngoài. Nếu điều kiện là đúng, thì điều khiển sẽ nhảy đến điều kiện vòng lặp bên trong. Tiếp theo, điều kiện vòng lặp bên trong được đánh giá. Nếu nó sai thì điều khiển sẽ nhảy trở lại điều kiện vòng lặp while bên ngoài. Nếu nó đúng, thì khối mã bên trong vòng lặp bên trong được thực thi

Một ví dụ đơn giản về vòng lặp while lồng nhau

Trong ví dụ này, chúng tôi tạo một mẫu số bằng cách sử dụng vòng lặp while lồng nhau

i=1
while i<=5:
    j=1
    while j<=i:
        print(j,end=" ")
        j=j+1
    print("")
    i=i+1

đầu ra

________số 8

Trong đoạn mã trên, vòng lặp while bên ngoài theo dõi mọi dòng mới bên trong mẫu và vòng lặp while bên trong hiển thị số theo điều kiện.
Ví dụ: nếu i=2
Vòng lặp ngoài. -

  1. Kể từ 2<=5, vòng lặp bên ngoài được thực hiện

Vòng trong. -

  1. Ban đầu j=1 và vì vòng lặp 1<=2 inners for được thực thi
  2. In j là 1 và tăng j
  3. Kiểm tra lại điều kiện, 2<=2, và vòng lặp bên trong được thực hiện
  4. In j là 2 và tăng j
  5. Bây giờ vì 3<=2 là Sai nên chúng tôi thoát khỏi vòng lặp bên trong

Một ví dụ thời gian thực về các vòng lặp lồng nhau

Báo cáo vấn đề

Hãy xem xét một trò chơi đố vui trực tuyến trong đó người dùng phải viết các từ đồng nghĩa của một từ nhất định và chỉ có ba cơ hội để trả lời đúng câu hỏi

synonyms=['pretty','alluring','lovely']
counter=3
while counter>0:
  answer=input("What is the synonym of 'Beautiful': ")
  status=True
  i=0
  while i

đầu ra

while expression:
   while expression:
      statement(s)
   statement(s)
0

Trong đoạn mã trên, chúng ta sử dụng một biến đếm để lưu trữ số lần thử và vòng lặp while bên ngoài xác minh rằng chỉ có ba lần thử được cung cấp cho người dùng. Chúng tôi cũng có một danh sách được gọi là từ đồng nghĩa lưu trữ các câu trả lời hợp lệ cho câu hỏi. Vòng lặp bên trong lặp qua danh sách và kiểm tra xem người dùng đã cung cấp câu trả lời đúng hay chưa. Nếu câu trả lời được cung cấp là đúng thì nó chỉ đơn giản là ngắt khỏi vòng lặp bên trong và thoát khỏi chương trình khi biến đếm bằng -1. Nếu câu trả lời không đúng, thì biến đếm bị giảm và vòng lặp bên trong được thực hiện lại cho đến khi biến đếm trở thành 0

Chúng ta có thể sử dụng vòng lặp while bên trong vòng lặp while không?

Không bắt buộc phải lồng cùng loại vòng lặp. Chúng ta có thể đặt vòng lặp for bên trong vòng lặp while hoặc vòng lặp do-while bên trong vòng lặp for.

Tôi có thể có một vòng lặp lồng nhau trong Python không?

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.