我的git代码仓库: [https://code.aliyun.com/whjwnavy] or [https://github.com/WHJWNAVY]

Python学习:Python函数

设计语言 WHJWNAVY 194℃ 0评论

类型转换函数

Python内置的常用函数还包括数据类型转换函数,比如int()函数可以把其他数据类型转换为整数:

>>> int('123')123>>> int(12.34)12>>> float('12.34')12.34>>> str(1.23)'1.23'>>> str(100)'100'>>> bool(1)True>>> bool('')False

函数别名

函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个“别名”:

>>> a = abs # 变量a指向abs函数>>> a(-1) # 所以也可以通过a调用abs函数1

定义函数

定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。

def my_sum(n, m): # 参数检查 if not isinstance(n, (int, float)): raise TypeError('bad operand type') if not isinstance(m, (int, float)): raise TypeError('bad operand type') nt = n summ = 0 while nt <= m: summ = summ + nt nt = nt +1 return summprint(my_sum(1, 1000))# print(my_sum("a", "z"))

导入函数

# my_test.pydef my_sum(i, n): pass

pass语句什么都不做,用来作为占位符,缺少了pass,代码运行就会有语法错误

# test.py (和my_test.py文件位于同一目录下)#注意test是文件名(不含.py扩展名)from my_test import my_sums = my_sum(1,100)

返回多个值

函数可以返回多个值。比如下面这个计算坐标的函数:

In [10]: def func_xy(x,y,d): ...: return (x+d,y+d) ...:In [11]: r=func_xy(1,2,3)In [12]: rOut[12]: (4, 5)In [13]: x,y=func_xy(2,2,4)In [14]: xOut[14]: 6In [15]: yOut[15]: 6

Python的函数返回多值其实就是返回一个tuple,但是返回的tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值。

默认参数

必选参数在前,默认参数在后

def print_stud(name, age=23, sex="boy"): print(name, "age:", age, ",sex:", sex) returnprint_stud("小红", 20, "girl")print_stud("小明")

可变参数

定义可变参数,需要在参数前面加了一个****号***。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数。

def sum_num(*num): sum = 0 for n in num: sum = sum + n return sumprint(sum_num())print(sum_num(1, 2, 3))print(sum_num(1, 2, 3, 4, 5))

list作为可变参数函数的参数

在list前面加一个*号,表示把这个list的所有元素作为可变参数传进去。

num = [1, 2, 3, 4, 5, 6]print(sum_num(*num))

转载请注明:胡椒小兄弟 » Python学习:Python函数

喜欢 (1)or分享 (0)
发表我的评论
取消评论
表情 签到