Mô tả các vòng lặp khác nhau trong Python

Bắt đầu học Python với hướng dẫn Giới thiệu về Python miễn phí của DataCamp. Tìm hiểu Khoa học dữ liệu bằng cách hoàn thành các thử thách mã hóa tương tác và xem video của các chuyên gia hướng dẫn. Bắt đầu bây giờ

Sẵn sàng để làm bài kiểm tra?


Có hai loại vòng lặp trong Python, for và while

Vòng lặp "cho"

Đối với các vòng lặp lặp lại trên một trình tự nhất định. Đây là một ví dụ

primes = [2, 3, 5, 7]
for prime in primes:
    print(prime)

Vòng lặp for có thể lặp qua một dãy số bằng cách sử dụng hàm "range" và "xrange". Sự khác biệt giữa phạm vi và xrange là hàm phạm vi trả về một danh sách mới với các số thuộc phạm vi đã chỉ định đó, trong khi xrange trả về một trình vòng lặp, hiệu quả hơn. (Python 3 sử dụng hàm phạm vi, hoạt động như xrange). Lưu ý rằng hàm phạm vi không dựa trên

# Prints out the numbers 0,1,2,3,4
for x in range(5):
    print(x)

# Prints out 3,4,5
for x in range(3, 6):
    print(x)

# Prints out 3,5,7
for x in range(3, 8, 2):
    print(x)

vòng lặp "trong khi"

Trong khi các vòng lặp lặp lại miễn là một điều kiện boolean nhất định được đáp ứng. Ví dụ

# Prints out 0,1,2,3,4

count = 0
while count < 5:
    print(count)
    count += 1  # This is the same as count = count + 1

câu lệnh "ngắt" và "tiếp tục"

break được sử dụng để thoát khỏi vòng lặp for hoặc while, trong khi continue được sử dụng để bỏ qua khối hiện tại và quay lại câu lệnh "for" hoặc "while". Một vài ví dụ

# Prints out 0,1,2,3,4

count = 0
while True:
    print(count)
    count += 1
    if count >= 5:
        break

# Prints out only odd numbers - 1,3,5,7,9
for x in range(10):
    # Check if x is even
    if x % 2 == 0:
        continue
    print(x)

Chúng ta có thể sử dụng mệnh đề "khác" cho các vòng lặp không?

Không giống như các ngôn ngữ như C,CPP. chúng ta có thể sử dụng other cho các vòng lặp. Khi điều kiện lặp của câu lệnh "for" hoặc "while" không thành công thì phần mã trong "else" được thực thi. Nếu câu lệnh break được thực thi bên trong vòng lặp for thì phần "else" sẽ bị bỏ qua. Lưu ý rằng phần "khác" được thực thi ngay cả khi có câu lệnh tiếp tục

Dưới đây là một vài ví dụ

# Prints out 0,1,2,3,4 and then it prints "count value reached 5"

count=0
while(count<5):
    print(count)
    count +=1
else:
    print("count value reached %d" %(count))

# Prints out 1,2,3,4
for i in range(1, 10):
    if(i%5==0):
        break
    print(i)
else:
    print("this is not printed because for loop is terminated because of break but not due to fail in condition")

Bài tập

Lặp lại và in ra tất cả các số chẵn từ danh sách số theo cùng thứ tự nhận được. Không in bất kỳ số nào đứng sau 237 trong dãy

Vòng lặp for (Inner loop) bên trong vòng lặp for khác (Outer loop) được gọi là vòng lặp for lồng nhau. Có thể có nhiều vòng lặp bên trong có thể được sử dụng theo kịch bản. Python hỗ trợ các vòng lặp bên trong lồng nhau

Đây là câu hỏi, Tại sao chúng ta cần các vòng lặp lồng nhau?

Hãy hiểu với ví dụ về vòng lặp for lồng nhau sau đây

employee = ["John", "Peter", "Jo"]
books = ["Math", "Science", "English"]

for x in employee: #Outer Loop
  for y in books: #Inner Loop
    print(x, y)
    

đầu ra

('John', 'Math')
('John', 'Science')
('John', 'English')
('Peter', 'Math')
('Peter', 'Science')
('Peter', 'English')
('Jo', 'Math')
('Jo', 'Science')
('Jo', 'English')

Giải trình. Ở đây chúng ta có hai vòng lặp. Vòng lặp bên ngoài sẽ lặp qua danh sách các chuỗi có tên là nhân viên trong khi Vòng lặp bên trong (Vòng lặp lồng nhau) sẽ lặp qua danh sách các chuỗi có tên là sách. Các vòng lặp bên trong sẽ bắt đầu và hoàn thành tất cả các lần lặp của nó cho mỗi lần lặp Vòng lặp bên ngoài

Vòng lặp for được sử dụng để lặp qua một chuỗi (đó là danh sách, bộ dữ liệu, từ điển, tập hợp hoặc chuỗi)

Điều này ít giống với từ khóa for trong các ngôn ngữ lập trình khác và hoạt động giống một phương thức lặp hơn như được tìm thấy trong các ngôn ngữ lập trình hướng đối tượng khác

Với vòng lặp for, chúng ta có thể thực thi một tập hợp các câu lệnh, một lần cho mỗi mục trong danh sách, bộ, bộ, v.v.

Ví dụ

In từng loại trái cây trong danh sách trái cây

trái cây = ["táo", "chuối", "anh đào"]
cho x trong trái cây
in(x)

Tự mình thử »

Vòng lặp for không yêu cầu đặt biến lập chỉ mục trước


Vòng qua một chuỗi

Các chuỗi thậm chí là các đối tượng có thể lặp lại, chúng chứa một chuỗi ký tự

Ví dụ

Vòng qua các chữ cái trong từ "banana"

cho x trong "chuối"
in(x)

Tự mình thử »


Tuyên bố phá vỡ

Với câu lệnh break, chúng ta có thể dừng vòng lặp trước khi nó lặp qua tất cả các mục

Ví dụ

Thoát khỏi vòng lặp khi x là "chuối"

trái cây = ["táo", "chuối", "anh đào"]
cho x trong trái cây
in(x)
nếu x == "chuối"
phá vỡ

Tự mình thử »

Ví dụ

Thoát khỏi vòng lặp khi x là "chuối", nhưng lần này dấu ngắt đến trước bản in

trái cây = ["táo", "chuối", "anh đào"]
cho x trong trái cây
nếu x == "chuối"
phá vỡ
in(x)

Tự mình thử »


Học cách lọc dữ liệu bằng Python như một nhà phân tích dữ liệu

Mô tả các vòng lặp khác nhau trong Python

Thử tham gia các buổi đào tạo thực hành với hướng dẫn từng bước từ chuyên gia. Hãy thử dự án có hướng dẫn được thực hiện với sự cộng tác của Coursera ngay bây giờ

Get started


Tuyên bố tiếp tục

Với câu lệnh continue, chúng ta có thể dừng vòng lặp hiện tại của vòng lặp và tiếp tục với vòng lặp tiếp theo

Ví dụ

Không in chuối

trái cây = ["táo", "chuối", "anh đào"]
cho x trong trái cây
nếu x == "chuối"
Tiếp tục
in(x)

Tự mình thử »


Hàm phạm vi ()

Để lặp qua một bộ mã một số lần xác định, chúng ta có thể sử dụng hàm range(),

Hàm range() trả về một dãy số, bắt đầu từ 0 theo mặc định và tăng dần theo 1 (theo mặc định) và kết thúc tại một số được chỉ định

Lưu ý rằng phạm vi (6) không phải là các giá trị từ 0 đến 6, mà là các giá trị từ 0 đến 5

Hàm range() mặc định là 0 làm giá trị bắt đầu, tuy nhiên có thể chỉ định giá trị bắt đầu bằng cách thêm một tham số. phạm vi (2, 6), có nghĩa là các giá trị từ 2 đến 6 (nhưng không bao gồm 6)

Hàm range() mặc định tăng chuỗi lên 1, tuy nhiên có thể chỉ định giá trị gia tăng bằng cách thêm tham số thứ ba. phạm vi (2, 30, 3)

Ví dụ

Tăng chuỗi với 3 (mặc định là 1)

cho x trong phạm vi (2, 30, 3)
in(x)

Tự mình thử »


Khác trong vòng lặp

Từ khóa else trong vòng lặp for chỉ định một khối mã sẽ được thực thi khi vòng lặp kết thúc

Ví dụ

In tất cả các số từ 0 đến 5 và in thông báo khi vòng lặp kết thúc

cho x trong phạm vi (6)
in(x)
khác
print("Cuối cùng cũng xong. ")

Tự mình thử »

Ghi chú. Khối else sẽ KHÔNG được thực thi nếu vòng lặp bị dừng bởi câu lệnh break

Ví dụ

Ngắt vòng lặp khi x là 3 và xem điều gì xảy ra với khối else

cho x trong phạm vi (6)
nếu x == 3. phá vỡ
in(x)
khác
print("Cuối cùng cũng xong. ")

Tự mình thử »


Vòng lồng nhau

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
in(x, y)

Tự mình thử »


Tuyên bố vượt qua

Vòng lặp for không thể để trống, nhưng nếu vì lý do nào đó bạn có vòng lặp for không có nội dung, hãy đặt câu lệnh x1 để tránh bị lỗi

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

Ba loại câu lệnh điều khiển vòng lặp là. .
tuyên bố phá vỡ
tiếp tục tuyên bố
vượt qua tuyên bố

Có bao nhiêu loại vòng lặp trong Python?

hai loại vòng lặp trong Python, for và while.

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

Vòng lặp là cấu trúc điều khiển được sử dụng để lặp lại một đoạn mã nhất định trong một số lần nhất định hoặc cho đến khi một điều kiện cụ thể được đáp ứng. Visual Basic có ba loại vòng lặp chính. cho. các vòng lặp tiếp theo, vòng lặp do và vòng lặp while .

4 loại vòng lặp là gì?

Chúng ta sẽ thảo luận về từ khóa continue và break được sử dụng để kiểm soát việc thực thi vòng lặp. .
Câu lệnh vòng lặp for. Câu lệnh for được sử dụng khi bạn biết mình muốn thực hiện bao nhiêu lần một câu lệnh hoặc một khối câu lệnh. .
Câu lệnh vòng lặp while. .
việc làm. .
Câu lệnh vòng lặp foreach. .
Tuyên bố phá vỡ