Một chức năng là một khối của mã có tổ chức, có thể tái sử dụng được sử dụng để thực hiện một hành động duy nhất, liên quan. Các chức năng cung cấp mô -đun tốt hơn cho ứng dụng của bạn và mức độ tái sử dụng mã cao. Show
Như bạn đã biết, Python cung cấp cho bạn nhiều hàm tích hợp như in (), v.v. nhưng bạn cũng có thể tạo các chức năng của riêng mình. Các chức năng này được gọi là các chức năng do người dùng xác định. Xác định một chức năngBạn có thể xác định các chức năng để cung cấp các chức năng cần thiết. Dưới đây là các quy tắc đơn giản để xác định một chức năng trong Python.
Cú phápdef functionname( parameters ): "function_docstring" function_suite return [expression] Theo mặc định, các tham số có hành vi vị trí và bạn cần thông báo cho chúng theo cùng thứ tự mà chúng được xác định. Thí dụHàm sau đây lấy một chuỗi làm tham số đầu vào và in nó trên màn hình tiêu chuẩn. def printme( str ): "This prints a passed string into this function" print (str) return Gọi một chức năngXác định một hàm cho nó một tên, chỉ định các tham số được bao gồm trong hàm và cấu trúc các khối mã. Khi cấu trúc cơ bản của hàm được hoàn thiện, bạn có thể thực hiện nó bằng cách gọi nó từ một hàm khác hoặc trực tiếp từ dấu nhắc Python. Sau đây là một ví dụ để gọi hàm printme () -printme() function − #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function") Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - This is first call to the user defined function! Again second call to the same function Vượt qua bởi tham chiếu vs giá trịTất cả các tham số (đối số) trong ngôn ngữ Python được truyền qua tham chiếu. Điều đó có nghĩa là nếu bạn thay đổi những gì một tham số đề cập đến trong một hàm, thay đổi cũng phản ánh lại trong hàm gọi. Ví dụ - #!/usr/bin/python3 # Function definition is here def changeme( mylist ): "This changes a passed list into this function" print ("Values inside the function before change: ", mylist) mylist[2]=50 print ("Values inside the function after change: ", mylist) return # Now you can call changeme function mylist = [10,20,30] changeme( mylist ) print ("Values outside the function: ", mylist) Ở đây, chúng tôi đang duy trì tham chiếu của đối tượng được truyền và nối thêm các giá trị trong cùng một đối tượng. Do đó, điều này sẽ tạo ra kết quả sau - Values inside the function before change: [10, 20, 30] Values inside the function after change: [10, 20, 50] Values outside the function: [10, 20, 50] Có một ví dụ nữa trong đó đối số được truyền bằng tham chiếu và tham chiếu đang được ghi đè bên trong hàm được gọi. #!/usr/bin/python3 # Function definition is here def changeme( mylist ): "This changes a passed list into this function" mylist = [1,2,3,4] # This would assi new reference in mylist print ("Values inside the function: ", mylist) return # Now you can call changeme function mylist = [10,20,30] changeme( mylist ) print ("Values outside the function: ", mylist) Tham số mylist là cục bộ với chức năng thay đổi. Thay đổi Mylist trong hàm không ảnh hưởng đến Mylist. Chức năng không hoàn thành không có gì và cuối cùng điều này sẽ tạo ra kết quả sau -mylist is local to the function changeme. Changing mylist within the function does not affect mylist. The function accomplishes nothing and finally this would produce the following result − Values inside the function: [1, 2, 3, 4] Values outside the function: [10, 20, 30] Đối số chức năngBạn có thể gọi một hàm bằng cách sử dụng các loại đối số chính thức sau -
Lập luận bắt buộcCác đối số bắt buộc là các đối số được truyền đến một hàm theo thứ tự vị trí chính xác. Ở đây, số lượng đối số trong cuộc gọi hàm sẽ khớp chính xác với định nghĩa hàm. Để gọi hàm printme (), bạn chắc chắn cần phải chuyển một đối số, nếu không nó sẽ gây ra lỗi cú pháp như sau -printme(), you definitely need to pass one argument, otherwise it gives a syntax error as follows − #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme() Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - Traceback (most recent call last): File "test.py", line 11, in <module> printme(); TypeError: printme() takes exactly 1 argument (0 given) Vượt qua bởi tham chiếu vs giá trịTất cả các tham số (đối số) trong ngôn ngữ Python được truyền qua tham chiếu. Điều đó có nghĩa là nếu bạn thay đổi những gì một tham số đề cập đến trong một hàm, thay đổi cũng phản ánh lại trong hàm gọi. Ví dụ - Ở đây, chúng tôi đang duy trì tham chiếu của đối tượng được truyền và nối thêm các giá trị trong cùng một đối tượng. Do đó, điều này sẽ tạo ra kết quả sau -printme() function in the following ways − def printme( str ): "This prints a passed string into this function" print (str) return0 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - def printme( str ): "This prints a passed string into this function" print (str) return1 Vượt qua bởi tham chiếu vs giá trị def printme( str ): "This prints a passed string into this function" print (str) return2 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - def printme( str ): "This prints a passed string into this function" print (str) return3 Vượt qua bởi tham chiếu vs giá trịTất cả các tham số (đối số) trong ngôn ngữ Python được truyền qua tham chiếu. Điều đó có nghĩa là nếu bạn thay đổi những gì một tham số đề cập đến trong một hàm, thay đổi cũng phản ánh lại trong hàm gọi. Ví dụ - def printme( str ): "This prints a passed string into this function" print (str) return4 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - def printme( str ): "This prints a passed string into this function" print (str) return5 Vượt qua bởi tham chiếu vs giá trịTất cả các tham số (đối số) trong ngôn ngữ Python được truyền qua tham chiếu. Điều đó có nghĩa là nếu bạn thay đổi những gì một tham số đề cập đến trong một hàm, thay đổi cũng phản ánh lại trong hàm gọi. Ví dụ - Ở đây, chúng tôi đang duy trì tham chiếu của đối tượng được truyền và nối thêm các giá trị trong cùng một đối tượng. Do đó, điều này sẽ tạo ra kết quả sau - def printme( str ): "This prints a passed string into this function" print (str) return6 Có một ví dụ nữa trong đó đối số được truyền bằng tham chiếu và tham chiếu đang được ghi đè bên trong hàm được gọi. def printme( str ): "This prints a passed string into this function" print (str) return7 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - def printme( str ): "This prints a passed string into this function" print (str) return8 Các chức năng ẩn danhCác chức năng này được gọi là ẩn danh vì chúng không được khai báo theo cách tiêu chuẩn bằng cách sử dụng từ khóa DEF. Bạn có thể sử dụng từ khóa Lambda để tạo các hàm ẩn danh nhỏ.def keyword. You can use the lambda keyword to create small anonymous functions.
Cú phápCú pháp của các hàm Lambda chỉ chứa một câu lệnh, như sau -lambda functions contains only a single statement, which is as follows − def printme( str ): "This prints a passed string into this function" print (str) return9 Sau đây là một ví dụ để hiển thị cách dạng chức năng Lambda hoạt động -lambda form of function works − #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")0 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")1 Tuyên bố trả lạiCâu lệnh trả về [Biểu thức] thoát ra một hàm, tùy chọn chuyển lại một biểu thức cho người gọi. Một câu lệnh trả về không có đối số giống như trả về không. Tất cả các ví dụ được đưa ra dưới đây không trả lại bất kỳ giá trị nào. Bạn có thể trả về một giá trị từ một hàm như sau - #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")2 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")3 Phạm vi của các biếnTất cả các biến trong một chương trình có thể không thể truy cập được tại tất cả các vị trí trong chương trình đó. Điều này phụ thuộc vào nơi bạn đã tuyên bố một biến. Phạm vi của một biến xác định phần của chương trình nơi bạn có thể truy cập một định danh cụ thể. Có hai phạm vi cơ bản của các biến trong Python -
Các biến toàn cầu so với địa phươngCác biến được xác định bên trong một cơ thể chức năng có phạm vi cục bộ và những biến được xác định bên ngoài có phạm vi toàn cầu. Điều này có nghĩa là các biến cục bộ chỉ có thể được truy cập bên trong hàm mà chúng được khai báo, trong khi các biến toàn cầu có thể được truy cập trên toàn bộ cơ thể chương trình bởi tất cả các chức năng. Khi bạn gọi một hàm, các biến được khai báo bên trong nó được đưa vào phạm vi. Sau đây là một ví dụ đơn giản - #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")4 Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau - #!/usr/bin/python3 # Function definition is here def printme( str ): "This prints a passed string into this function" print (str) return # Now you can call printme function printme("This is first call to the user defined function!") printme("Again second call to the same function")5 3 chức năng trong Python là gì?Có ba loại chức năng trong Python:.. Các hàm tích hợp, chẳng hạn như trợ giúp () để yêu cầu trợ giúp, min () để có được giá trị tối thiểu, in () để in một đối tượng vào thiết bị đầu cuối, trên .... Các chức năng do người dùng xác định (UDF), là các chức năng mà người dùng tạo để giúp họ; Và.. Ví dụ về chức năng Python là gì?Trong Python, một chức năng là một nhóm các tuyên bố liên quan thực hiện một nhiệm vụ cụ thể.Các chức năng giúp phá vỡ chương trình của chúng tôi thành các khối nhỏ hơn và mô -đun.Khi chương trình của chúng tôi phát triển lớn hơn và lớn hơn, các chức năng làm cho nó được tổ chức và quản lý hơn.Hơn nữa, nó tránh được sự lặp lại và làm cho mã có thể tái sử dụng.a group of related statements that performs a specific task. Functions help break our program into smaller and modular chunks. As our program grows larger and larger, functions make it more organized and manageable. Furthermore, it avoids repetition and makes the code reusable.
Làm thế nào để bạn viết một chức năng trong Python 3?Một hàm được xác định bằng cách sử dụng từ khóa DEF, theo sau là tên bạn chọn, theo sau là một tập hợp dấu ngoặc đơn chứa bất kỳ tham số nào mà hàm sẽ lấy (chúng có thể trống) và kết thúc bằng dấu hai chấm.using the def keyword, followed by a name of your choosing, followed by a set of parentheses which hold any parameters the function will take (they can be empty), and ending with a colon.
4 loại chức năng trong Python là gì?Sau đây là các loại chức năng Python khác nhau:.. Chức năng tích hợp Python .. Chức năng đệ quy Python .. Chức năng Python Lambda .. Các chức năng do người dùng Python xác định .. |