Chúng tôi biết rằng Python là ngôn ngữ lập trình hướng đối tượng. Nó hỗ trợ các khả năng lập trình như kế thừa và đa hình. "Khả năng sử dụng lại mã" là một tính năng chính khi làm việc với các ngôn ngữ lập trình Show Điều này mang lại ánh sáng cho một chủ đề khác. "Lặp mã trong Python". Chắc hẳn bạn đang thắc mắc Code Repetition trong Python là gì và dùng để làm gì? Chà, để Lặp lại trong Python đề cập đến việc lặp lại một đoạn mã để đạt được một kết quả nhất định. Nói một cách đơn giản, nó sẽ duyệt qua một đoạn mã một số lần cụ thể. Nhưng tại sao chúng ta lại thảo luận về Lặp lại trong Python khi DRY (không lặp lại chính bạn) đang ở mức cao nhất? Bạn sẽ sớm có câu trả lời nhưng trước tiên, hãy tìm hiểu thêm về lặp lại trong Python và cách lặp lại trong Python Lặp lại trong PythonNhư đã thảo luận ở trên, lặp lại về cơ bản là lặp đi lặp lại một đoạn mã nhiều lần để đạt được đầu ra mong muốn. Đoạn mã này có thể là bất cứ thứ gì, một số hướng dẫn, hàm số học, bộ đếm hoặc thao tác in đơn giản Bạn sẽ ngạc nhiên khi biết rằng khái niệm Vòng lặp và Hàm ra đời vì Lặp lại trong lập trình Chúng đã cải thiện khả năng đọc mã đồng thời giảm số lượng dòng mã. Vì vậy, bằng cách sử dụng điều này, chúng ta cũng có thể đạt được sự tối ưu hóa trong Python. Trước khi tiếp tục, chúng ta hãy xem một vài thuật ngữ chúng ta sẽ sử dụng bên dưới
Làm cách nào để lặp lại N lần trong Python?Chúng ta hãy xem một số phương pháp để lặp lại trong lập trình python Ngoài ra, lưu ý rằng chúng ta sẽ giải quyết nhiều câu hỏi khi chúng ta đi xuống bài viết 01) Sử dụng vòng lặpMột vòng lặp được sử dụng để thực hiện một tập lệnh hoặc một khối mã nhiều lần mà không cần phải viết lại. Khi xử lý các vòng lặp, cần phải có điều kiện để thoát ra, nếu không bạn có thể kết thúc với một vòng lặp không bao giờ kết thúc (vô hạn) Một vòng lặp cơ bản bao gồm các thao tác sau
Hãy xem hình ảnh bên dưới để hiểu cách thức hoạt động của một vòng lặp cơ bản Bây giờ, bạn đã làm quen với các vòng lặp, hãy chuyển sang vòng lặp do Python cung cấp để lặp lại n lần Sử dụng phạm vi() với vòng lặp For Vòng lặp for lặp lại một trình tự cho đến khi một điều kiện được đáp ứng. Nếu bạn quen thuộc với các ngôn ngữ khác, bạn cũng có thể so sánh rằng vòng lặp for do Python cung cấp giống với vòng lặp 'for-each' trong các ngôn ngữ khác hơn Trong Python, vòng lặp for được sử dụng để lặp qua một chuỗi (như danh sách, bộ dữ liệu, từ điển, tập hợp hoặc chuỗi). Một vòng lặp for trong Python được gọi một cách rõ ràng khi số lần lặp là cố định Một vòng lặp for chung trong Python trông như thế này cho [tên_biến] trong [tên_dãy] Hãy lấy một ví dụ mô tả phép lặp qua một chuỗi trong Python # Program: Iterate over a sequence # a sequence fruits = ["apple", "mango", "banana", "orange"] # the for loop for fruit in fruits: print(fruit) # here, the fruit is temporary variable while fruits is the list
Ở đây, 'quả' đại diện cho từng thành phần trong danh sách 'quả' đầu ra apple mango banana orange
Bây giờ chúng ta đã xem xét vòng lặp for trong Python, hãy chuyển sang cách vòng lặp for được sử dụng để lặp lại n lần trong Python phạm vi() chức năng Python cung cấp một hàm dựng sẵn để tạo ra một chuỗi số. Hàm range(), mặc dù được sử dụng để tạo ra một dãy số, cũng được sử dụng với vòng lặp for như một câu lệnh thoát (hoặc để giữ số lần lặp lại) cú pháp phạm vi ( bắt đầu = 0, dừng lại, bước = 1) Hàm phạm vi nhận ba tham số, cụ thể là bắt đầu, dừng và bước
Ví dụ: để tạo một chuỗi như. 1, 2, 3, 4, 5 thì các tham số trong hàm range() sẽ là bắt đầu = 1 stop = 6 (vì phạm vi () không bao gồm điểm dừng trong phạm vi) bước = 1 (thêm 1 vào số trước để tạo chuỗi) Theo mặc định, giá trị của start và step lần lượt là 0 và 1. Cần cung cấp một tham số là điểm dừng của hàm Thí dụ # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")
Tôi đã sử dụng 'kết thúc' để lấy chuỗi trong một dòng đầu ra 0 1 2 3 4 5 6
Dãy thu được không chứa giá trị của n. Đây là một ví dụ lặp lại n lần trong Python Sử dụng Vòng lặp While Vòng lặp while là một cách khác để lặp lại n lần trong Python. Nó tiếp tục thực hiện cho đến khi một điều kiện nhất định được đáp ứng. Nó cũng yêu cầu một câu lệnh/điều kiện thoát để kết thúc vòng lặp Thí dụ # Program: Iterate n times in Python # initialization count = 1 # exit limit n = 7 while count in range(n): print(count) # increment count += 1
đầu ra 1 2 3 4 5 6
Lưu ý rằng chúng tôi đã thực sự mô tả cách giá trị được tính thay vì lặp lại cùng một mã n lần 02) Sử dụng HàmNhư đã đề cập trước đó, nhu cầu lặp lại mã đã tạo ra các vòng lặp và chức năng. Các chức năng về cơ bản là một đoạn mã mà bạn có thể sử dụng lại thay vì viết chúng ra nhiều lần. Những điều này làm tăng khả năng sử dụng lại mã và khả năng đọc của mã Một chức năng được khai báo bởi def function_name (tham số) { bản tường trình } Hãy lấy một ví dụ nhanh về cách định nghĩa một hàm trong Python và cách gọi nó trong chương trình # Program: Defining and calling functions # defining a function def repeat(parameter): # use of * operator print("Function called " * parameter) # main body n = 3 # calling the function repeat(3)
đầu ra Function called Function called Function called
Mặc dù các hàm không thực sự góp phần lặp lại/lặp lại n lần trong Python, nhưng chúng là một phần của Lặp lại mã Tất cả các phương thức trên đều do người dùng định nghĩa, bạn phải tự hỏi liệu có bất kỳ hàm dựng sẵn nào trong Python không. Hãy di chuyển đến nó Có chức năng Lặp lại trong Python không?Không có bất kỳ chức năng lặp lại cụ thể nào trong mô-đun nội trang của Python. Nhưng Python cung cấp các mô-đun như NumPy và pandas, có chức năng lặp lại() của riêng chúng. Hàm repeat() là hàm thực sự sẽ cho phép bạn lặp lại mã n lần trong python 01) Sử dụng itertools. nói lại()Mô-đun itertools cung cấp hàm repeat() để thực hành lặp lại trong Python. Trong repeat(), chúng tôi cung cấp dữ liệu cũng như số lần dữ liệu sẽ được lặp lại. Tương tự với các vòng lặp, cần phải chỉ định số lượng, nếu không chức năng sẽ không bị kết thúc và sẽ kết thúc trong một vòng lặp vô thời hạn Cú pháp cơ bản itertools. lặp lại (giá trị, n) Cú pháp trên có thể không mang lại kết quả gì cho bạn. Hàm repeat() thực sự lặp lại giá trị n lần vào một danh sách, do đó, đầu ra thu được cần được lưu trữ trong một danh sách để được hiển thị. Nó hoạt động với- in (danh sách (itertools. lặp lại (giá trị, n))) Hãy lấy một ví dụ để hiểu việc sử dụng itertools. lặp lại tốt hơn ________số 8
đầu ra ['Repeat', 'Repeat', 'Repeat', 'Repeat', 'Repeat']
Lưu ý rằng mô-đun itertools cần được nhập trước khi gọi hàm repeat() của Python 02) Sử dụng numpy. nói lại()Mô-đun NumPy cung cấp hàm repeat() 'lặp lại các phần tử của một mảng. Việc lặp lại các phần tử của một mảng có nghĩa là mỗi phần tử của mảng được lặp lại n lần và một mảng mới được tạo ra với các giá trị được lặp lại này Do đó, với một mảng như -> array = [1, 2, 3, 4] , kết quả lặp mảng 1 lần sẽ là -> [1, 1, 2, 2, 3, 3, 4, 4] Hãy nhìn vào sơ đồ dưới đây để hiểu rõ hơn các numpy. hàm repeat() lấy 3 tham số làm đầu vào
cú pháp new_arr = numpy. lặp lại (mảng, n, trục) Hãy lấy một ví dụ để hiểu về numpy. chức năng lặp lại () apple mango banana orange0
đầu ra apple mango banana orange1
Bây giờ, hãy thử đặt tham số axis = 1 apple mango banana orange2
đầu ra apple mango banana orange3
Lưu ý rằng đã xảy ra lỗi khi gọi numpy. hàm repeat() với axis=1. Bây giờ, chúng ta đã gặp lỗi trong mảng 1-D, hãy thử lặp lại() cho mảng 2 chiều với các giá trị trục khác nhau (i) Đối với trục = 0 Kết quả thu được sẽ như thế nào apple mango banana orange4
đầu ra apple mango banana orange5
(ii) Đối với trục = 1 Kết quả thu được sẽ như thế nào apple mango banana orange6
đầu ra apple mango banana orange7
Lưu ý sự khác biệt trong cách trình bày kết quả đầu ra, đối với cùng một mảng nhưng các giá trị trục khác nhau Mặc dù chúng ta đã thấy ví dụ lặp lại n lần trong Python cho mảng, nhưng numpy. repeat() cũng hoạt động trên các phần tử riêng lẻ (như số). Hãy xem xét điều đó apple mango banana orange8
đầu ra apple mango banana orange9
Theo mặc định, giá trị của trục là 0. Nó sẽ trả về lỗi nếu chúng ta thay đổi trục Bạn cũng có thể thử đặt một mảng (như [1,2]) dưới dạng lặp lại trong hàm. Ngoài ra, trong khi bạn đang ở đó, hãy thử nhập các giá trị âm cho trục. Bạn sẽ ngạc nhiên với kết quả 03) Sử dụng gấu trúc. chức năng lặp lại ()Chức năng lặp lại của gấu trúc () trả về đầu ra theo cách tương tự như mô-đun NumPy. Ở đây, hàm repeat() trả về một "Sê-ri" mới, trong đó mỗi phần tử của Sê-ri hiện tại được lặp lại một số lần nhất định trong một hàng. Phương pháp này yêu cầu hàm Series() và hàm repeat() của mô-đun pandas Lưu ý rằng Pandas Series tương tự như cột bảng. Nó là một mảng một chiều có thể chứa bất kỳ dạng dữ liệu nào cú pháp Chuyển đổi sang sê-ri -> a = gấu trúc. Sê-ri([danh sách hoặc dữ liệu]) Gọi lặp lại () -> pandaSeries. lặp lại ( n, trục ) Lưu ý rằng ở đây trục được đặt thành Không có Hãy lấy một ví dụ để hiểu lặp lại trong Python bằng mô-đun gấu trúc # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")0
đầu ra # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")1
Do đó, từ các ví dụ trên, rõ ràng là có các mô-đun cung cấp hàm repeat() để lặp lại n lần trong Python Cho đến giờ chúng ta đã thảo luận về hàm repeat() trong Python. Chúng ta đã thấy một số ví dụ về cách triển khai các chức năng lặp lại này trên danh sách. Bạn có biết rằng bạn có thể lặp lại một chuỗi n lần trong Python không? Nếu bạn vẫn còn nghi ngờ, hãy giải quyết các thắc mắc của bạn với các gia sư python chuyên gia của chúng tôi Hãy kiểm tra xem chúng ra Thủ thuật lặp lại chuỗi n lần trong PythonBạn đã bao giờ thử sử dụng toán tử '*' với một chuỗi chưa? Nó đã cho bạn một lỗi, phải không? Nhưng nếu tôi nói với bạn rằng bạn có thể sử dụng toán tử * này để lặp lại chuỗi n lần trong Python thì sao? Vì vậy, hãy thực hiện nó Toán tử '*' còn được gọi là toán tử lặp lại. Bạn có thể sử dụng trực tiếp toán tử giữa chuỗi cần in và n, như chuỗi *n Thí dụ # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")2
đầu ra # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")3
Nó hoạt động đúng. Bây giờ nếu tôi nói với bạn rằng bạn cũng có thể lặp lại một phần cụ thể của chuỗi n lần trong Python thì sao? Hãy cùng kiểm tra nào # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")4
đầu ra # Program: using range() function in Python # Problem : get a sequence of natural numbers from 1 to 6 # Note that the number n is 1 more than the last digit n = 7 for i in range(n): # n is excluded print(i, end=" ")5
Bạn chỉ cần chọn một phần của chuỗi bằng cách sử dụng Slicing và sau đó bạn có thể bắt đầu Sự kết luậnTrong bài viết này, chúng ta đã thảo luận về cách lặp lại trong Python và cách nó tạo ra nhu cầu về vòng lặp và hàm. Hơn nữa, chúng ta đã học về các hàm repeat() trong python, được cung cấp bởi các mô-đun như itertools, pandas và NumPy. Ngoài chúng ra, chúng ta cũng đã thấy một thủ thuật để lặp chuỗi n lần trong Python Tôi khuyên bạn nên thực hiện các phương pháp đã thảo luận ở trên và cũng tìm hiểu thêm để so sánh và biết phương pháp nào phù hợp hơn với bạn. mã hóa hạnh phúc |