Python 中带括号和不带括号调用函数
术语“调用函数”指的是递归,这意味着函数调用自身。带括号的函数定义了一些参数,用于处理特定条件和操作,而不带括号的函数指的是函数引用。在 Python 中,我们有两种方法,即函数引用和带参数的函数,它们将用于解决带括号和不带括号的函数调用问题。
语法
以下语法在示例中使用
def function_name(): -------- -------- function_name()
这是带括号函数的表示。
def function_name(): -------- -------- reference = function_name print("The function reference:", reference)
这是借助引用表示不带括号的函数。
带括号的简单函数调用
以下示例中的程序使用递归函数,并应用 print 语句来显示一些文本。然后使用调用函数返回结果。
示例
# invoke the function without parenthesis def education(): print("Welcome To Tutorialspoint") education()
输出
Welcome To Tutorialspoint
带参数的函数调用
在下面的示例中,程序使用一个名为 addition() 的递归函数,该函数接受两个参数 x 和 y,用于对两个变量进行加法运算。接下来,使用调用函数传递关于 x 和 y 的两个值,并将它们存储在变量 res 中。最后,它将借助变量 res 打印结果。
示例
def addition(x, y): return x + y res = addition(30, 40) print("The sum of two numbers: ", res)
输出
The sum of two numbers: 70
分配不带括号的函数引用
在下面的示例中,程序使用一个名为 Emp() 的函数定义,并应用 print 来显示一些文本。接下来,它将使用函数引用,其中函数 Emp 将其存储在变量 result 中。现在使用调用函数返回输出。
示例
def Emp(): print("Python Codeground") # function reference without parenthesis result = Emp result()
输出
Python Codeground
不带括号的函数返回值
在下面的示例中,程序使用了三个函数,即 add_string()、merge_stng() 和 without_parenthesis()。第二个函数 merge_stng 接受两个参数,用于添加两个字符串。接下来,merge_stng 不带括号地返回结果。merge_stng 的记录将存储在名为 add_string 的函数中。接下来使用另一个函数,即 without_parenthesis(),它使用函数 add_string() 设置 merge_stng 函数的引用,并将其存储在变量 res 中。现在它将打印引用及其执行。最后,我们调用名为 without_parenthesis() 的函数以获取结果。
示例
def add_string(): def merge_stng(str1, str2): return str1 + str2 # return the function without parenthesis return merge_stng def without_parenthesis(): # return the reference of merge_string function res = add_string() # prints the reference print(res) # executes the reference print(res('Welcome', ' to India')) without_parenthesis()
输出
<function add_string.<locals>.merge_stng at 0x7f176a50b910> Welcome to India
结论
我们讨论了四种不同的方法来处理 Python 中带括号和不带括号的函数调用。没有使用任何内置函数来执行这些任务。函数调用是一种很棒的技术,可以缩短代码长度并利用迭代。