龙空技术网

Python函数

少儿编程Prog61 107

前言:

此刻咱们对“pythonmid函数”可能比较关注,我们都想要了解一些“pythonmid函数”的相关知识。那么小编在网摘上收集了一些对于“pythonmid函数””的相关文章,希望姐妹们能喜欢,我们快快来了解一下吧!

函数是一组语句,这些语句接受输入,进行一些特定的计算并产生输出。这个想法是将一些通常或重复执行的任务放在一起并创建一个函数,这样我们就可以调用函数,而不是为不同的输入一次又一次地编写相同的代码。

Python提供了诸如print()等内置函数,但是我们也可以创建自己的函数。这些功能称为用户定义功能。

# A simple Python function to check # whether x is even or odd def evenOdd( x ):     if (x % 2 == 0):         print "even"    else:         print "odd"  # Driver code evenOdd(2) evenOdd(3) 

输出:

evenodd

参数通过引用传递还是通过值传递?

在Python中,每个变量名都是一个引用。当我们将变量传递给函数时,将创建对该对象的新引用。Python中传递的参数与Java中传递的参数相同。

# Here x is a new reference to same list lst def myFun(x):    x[0] = 20  # Driver Code (Note that lst is modified # after function call. lst = [10, 11, 12, 13, 14, 15]  myFun(lst); print(lst)  

输出:

[20, 11, 12, 13, 14, 15]

当我们传递一个引用并将接收的引用更改为其他内容时,传递和接收的参数之间的连接会断开。例如,考虑下面的程序。

def myFun(x):      # After below line link of x with previous    # object gets broken. A new object is assigned    # to x.    x = [20, 30, 40]   # Driver Code (Note that lst is not modified # after function call. lst = [10, 11, 12, 13, 14, 15]  myFun(lst); print(lst)  

输出:

[10, 11, 12, 13, 14, 15]

另一个示例说明如果我们分配一个新值(在函数内部),则引用链接断开。

def myFun(x):      # After below line link of x with previous    # object gets broken. A new object is assigned    # to x.    x = 20  # Driver Code (Note that lst is not modified # after function call. x = 10 myFun(x); print(x)  

输出:

10

练习:尝试猜测以下代码的输出。

def swap(x, y):     temp = x;     x = y;     y = temp;   # Driver code x = 2y = 3swap(x, y) print(x) print(y) 

输出:

23

默认参数

默认参数是一个参数,如果参数的函数调用中未提供值,则该参数将采用默认值。以下示例说明了默认参数。

# Python program to demonstrate # default arguments def myFun(x, y=50):     print("x: ", x)     print("y: ", y)   # Driver code (We call myFun() with only # argument) myFun(10) 

输出:

('x: ', 10)('y: ', 50)

像C++默认参数一样,函数中任意数量的参数都可以具有默认值。但是一旦有了默认参数,其右边的所有参数也必须具有默认值。

关键字参数

这个想法是允许调用者使用值指定参数名称,以便调用者无需记住参数的顺序。

# Python program to demonstrate Keyword Arguments def student(firstname, lastname):       print(firstname, lastname)          # Keyword arguments                   student(firstname ='Geeks', lastname ='Practice')     student(lastname ='Practice', firstname ='Geeks')   

输出:

('Geeks', 'Practice')('Geeks', 'Practice')

可变长度参数

我们可以同时拥有普通和关键字可变数量的参数。

# Python program to illustrate   # *args for variable number of arguments def myFun(*argv):      for arg in argv:          print (arg)     myFun('Hello', 'Welcome', 'to', 'GeeksforGeeks')  

输出:

HelloWelcometoGeeksforGeeks
# Python program to illustrate   # *kargs for variable number of keyword arguments   def myFun(**kwargs):      for key, value in kwargs.items():         print ("%s == %s" %(key, value))   # Driver code myFun(first ='Geeks', mid ='for', last='Geeks')     

输出:

last == Geeksmid == forfirst == Geeks

匿名函数

在Python中,匿名函数意味着一个函数没有名称。我们已经知道def关键字用于定义普通函数,而lambda关键字用于创建匿名函数。

# Python code to illustrate cube of a number   # using labmda function      cube = lambda x: x*x*x  print(cube(7))  

输出:

343

标签: #pythonmid函数