Computer >> Máy Tính >  >> Lập trình >> Python

Các hàm một phần trong Python?

Mọi người đều thích viết mã có thể sử dụng lại, phải không? Sau đó, một phần chức năng là một điều thú vị để học. Các hàm một phần cho phép chúng ta chuyển một hàm có tham số x thành một hàm có ít tham số hơn và các giá trị không đổi được đặt cho hàm hạn chế hơn.

Chúng ta có thể viết ứng dụng chức năng từng phần trong python thông qua thư viện functools. Dưới đây là một ví dụ đơn giản về chức năng từng phần từ thư viện functools với chức năng thêm từ thư viện toán tử.

>>> from functools import *
>>> from operator import *
>>> add(1,2)
3
>>> add1 = partial(add, 4)
>>> add1(6)
10
>>> add1(10)
14

Phần là một hàm bậc cao hơn lấy một hàm làm đầu vào (như bản đồ và bộ lọc) nhưng nó cũng trả về một hàm có thể được sử dụng theo cách tương tự như bất kỳ hàm nào khác trong chương trình của bạn.

>>> list(map (add1, [1, 2, 3, 4, 5]))
[5, 6, 7, 8, 9]
>>> seven = partial(add1, 3)
>>> seven()
7

Chúng ta cũng có thể sử dụng các phương thức một phần trên đối tượng, ví dụ:để tạo danh sách các chuỗi mặc định -

>>> str1 = "Hello, Python"
>>> helloStr = partial(str1.replace, "Python")
>>> helloStr("Tutorialspoint")
'Hello, Tutorialspoint'
>>> helloStr("Java")
'Hello, Java'

Ứng dụng hàm từng phần là một công cụ rất hữu ích, đặc biệt khi bạn cần áp dụng một loạt các đầu vào khác nhau cho một đối tượng duy nhất hoặc cần liên kết một trong các đối số với một hàm là hằng số.

Hàm Python giúp bạn viết mã dễ dàng và dễ bảo trì hơn.