Python cho vòng lặp

Trong bài viết này, bạn sẽ học cách lặp lại một chuỗi các phần tử bằng cách sử dụng các biến thể khác nhau của vòng lặp for.

Video: Python for Loop

Vòng lặp for trong Python là gì?

Vòng lặp for trong Python được sử dụng để lặp qua một chuỗi (danh sách, tuple, chuỗi) hoặc các đối tượng có thể lặp lại khác. Lặp lại trên một trình tự được gọi là duyệt.

Cú pháp của for Loop

 cho val theo thứ tự: Nội dung của for

Đây, vallà biến nhận giá trị của mục bên trong chuỗi trên mỗi lần lặp.

Vòng lặp tiếp tục cho đến khi chúng ta đến mục cuối cùng trong chuỗi. Phần thân của vòng lặp for được phân tách khỏi phần còn lại của mã bằng cách sử dụng thụt đầu dòng.

Lưu đồ cho Vòng lặp

Lưu đồ cho Loop bằng Python

Ví dụ: Python for Loop

 # Program to find the sum of all numbers stored in a list # List of numbers numbers = (6, 5, 3, 8, 4, 2, 5, 4, 11) # variable to store the sum sum = 0 # iterate over the list for val in numbers: sum = sum+val print("The sum is", sum) 

Khi bạn chạy chương trình, đầu ra sẽ là:

 Tổng là 48

Hàm range ()

Chúng ta có thể tạo một dãy số bằng range()hàm. range(10)sẽ tạo ra các số từ 0 đến 9 (10 số).

Chúng tôi cũng có thể xác định kích thước bắt đầu, dừng và bước như range(start, stop,step_size). step_size mặc định là 1 nếu không được cung cấp.

Đối rangetượng "lười biếng" theo một nghĩa nào đó vì nó không tạo ra mọi số mà nó "chứa" khi chúng ta tạo nó. Tuy nhiên, nó không phải là một iterator vì nó hỗ trợ in, len__getitem__các hoạt động.

Hàm này không lưu trữ tất cả các giá trị trong bộ nhớ; nó sẽ không hiệu quả. Vì vậy, nó ghi nhớ kích thước bắt đầu, dừng, bước và tạo số tiếp theo khi di chuyển.

Để buộc hàm này xuất ra tất cả các mục, chúng ta có thể sử dụng hàm list().

Ví dụ sau đây sẽ làm rõ điều này.

 print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))

Đầu ra

 phạm vi (0, 10) (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (2, 3, 4, 5, 6, 7) (2, 5, 8, 11, 14 , 17)

Chúng ta có thể sử dụng range()hàm trong forcác vòng lặp để lặp qua một chuỗi số. Nó có thể được kết hợp với len()hàm để lặp qua một chuỗi bằng cách sử dụng lập chỉ mục. Đây là một ví dụ.

 # Program to iterate through a list using indexing genre = ('pop', 'rock', 'jazz') # iterate over the list using index for i in range(len(genre)): print("I like", genre(i))

Đầu ra

 Tôi thích nhạc pop, tôi thích nhạc rock, tôi thích nhạc jazz

vòng lặp for với else

Một forvòng lặp cũng có thể có một elsekhối tùy chọn . Phần elseđược thực hiện nếu các mục trong trình tự được sử dụng trong vòng lặp for hết.

Các breaktừ khóa có thể được sử dụng để ngăn chặn một vòng lặp for. Trong những trường hợp như vậy, phần khác bị bỏ qua.

Do đó, phần khác của vòng lặp for sẽ chạy nếu không xảy ra ngắt.

Đây là một ví dụ để minh họa điều này.

 digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")

Khi bạn chạy chương trình, đầu ra sẽ là:

 0 1 5 Không còn mục nào.

Tại đây, vòng lặp for sẽ in các mục của danh sách cho đến khi vòng lặp kết thúc. Khi vòng lặp for hết, nó thực thi khối mã trong elsevà in Không còn mục nào.

Câu for… elselệnh này có thể được sử dụng với breaktừ khóa để chạy elsekhối chỉ khi breaktừ khóa không được thực thi. Hãy lấy một ví dụ:

 # program to display student's marks from record student_name = 'Soyuj' marks = ('James': 90, 'Jules': 55, 'Arthur': 77) for student in marks: if student == student_name: print(marks(student)) break else: print('No entry with that name found.')

Đầu ra

 Không tìm thấy mục nào có tên đó.

thú vị bài viết...