函数
绝大多数函数是执行特定的操作并返回特定的值,函数有python自带的,也可以自行自定义。
使用自带的函数
import math
y = math.sqrt(4)
print(y)
2.0
使用def自定义函数
def hello(name):
return 'Hello, ' + name + '!'
print(hello('world'))
Hello, world!
return
def test():
print('This is printed')
return
print('This is not')
x = test()
This is printed
此时的return类似break的作用,并未返回任何值,只是跳过这个函数。
参数
多数函数会带参数用于获取一系列的值,但其中的参数仅为形参,了解形参实参的区别有助于我们更好的了解函数。
>>> def try_to_change(n):
n = 'Mr. Gumby'
>>> name = 'Mrs. Entity'
>>> try_to_change(name)
>>> name
'Mrs. Entity'
这样操作仅仅是令n=name,接着令n=‘Mr. Gumby’,并未真正改变name的值。
默认值
设定默认值后,我们就无需在意参数的位置,只要与形参对应即可。
def hello_1(greeting, name):
print('{}, {}!'.format(greeting, name))
>>>hello_1(name='world', greeting='Hello')
Hello, world!
lambda表达式
使用 lambda 来创建匿名函数,所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。
sum = lambda arg1, arg2: arg1 + arg2
print ("相加后的值为 : ", sum( 10, 20 ))
30
你也可以在def函数中使用lambda定返回匿名函数,lambda便于快速写成一个简单的函数,减少代码数量。通常在序列操作中会用到。
map( lambda x : x + 1, [1, 2, 3] )