Tôi đang giải một câu đố bằng cách sử dụng python và tùy thuộc vào câu đố nào tôi đang giải quyết, tôi sẽ phải sử dụng một bộ quy tắc đặc biệt. Làm thế nào tôi có thể chuyển một hàm vào một hàm khác trong Python?Python - Chuyển hàm vào hàm khác
Ví dụ
def Game(listA, listB, rules):
if rules == True:
do...
else:
do...
def Rule1(v):
if "variable_name1" in v:
return False
elif "variable_name2" in v:
return False
else:
return True
def Rule2(v):
if "variable_name3" and "variable_name4" in v:
return False
elif "variable_name4" and variable_name1 in v:
return False
else:
return True
Đây chỉ là một mã giả và do đó không cụ thể nhưng tôi nhận được mã để biên dịch nhưng tôi cần phải biết làm thế nào để gọi hàm Game
và cho dù đó là định nghĩa một cách chính xác kể từ khi quy tắc này sẽ được chuyển cho Rule1(v)
hoặc Rule2(v)
.
chức năng là đối tượng hạng nhất trong python. bạn có thể vượt qua chúng xung quanh, bao gồm chúng trong dicts, danh sách, vv Chỉ cần không bao gồm dấu ngoặc đơn sau tên hàm. Ví dụ, đối với một hàm có tên 'myfunction':' myfunction' có nghĩa là chính hàm đó, 'myfunction()' có nghĩa là gọi hàm và nhận giá trị trả về của nó thay vào đó. – nosklo
Tôi thích các ví dụ đơn giản, chúng chỉ có ý nghĩa !!! – mongotop
Và nếu hàm là một phương thức trên một đối tượng và sử dụng một thuộc tính của đối tượng đó để thực hiện công việc của nó? – CpILL