参考:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00137473843313062a8b0e7c19b40aa8f31bdc4db5f6498000
#################################################
Python定义函数使用def,然后依次写出函数名/括号/括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return 语句
如果没有return语句,函数执行完毕后也会返回结果,只是结果为None
return None可以简写为return
######################################################3
空函数
如果想定义一个空函数,可以使用pass语句:
def hello(x, y, c):
pass
pass也可使用在其他语句中:
if age>31
pass
###################################################
参数检查
调用python内置函数时,如果参数个数不对或参数类型不对,python解释器会自动检查出来;
而调用自己写的函数时,python可以检查出参数个数不对,但不能检查出参数类型:
def my_abs(x):
if x>=0:
return x
else:
return -x
my_abs(1,2)
my_abs('A')
abs(1,2)
abs('A')
数据类型检查可以使用内置函数isinstance()实现
def my_abs(x):
if not isinstance(x, (int, float)):
raise TypeError('bad operand type')
if x>=0:
return x
else:
return -x
my_abs('A')
isinstance(object, class-or-type-or-tuple) ->bool
内置函数isinstance有两个参数,第一个参数是待检测的对象,第二个参数是对象类型,可以是单个类型,也可以是元组,返回的bool类型
如果待检测对象属于第二个参数,则返回True;否则,返回False
#################################################
返回多个值
python函数可以返回多个值
def hello():
return 1,2,3,'asdf'
x,y,z,f=hello()
其实Python函数返回的仍然是单一值,一个tuple
########################################################
type:
有时不知道该对象是啥类型,可以使用type来判断:
type(ord)
对象ord是内建函数,所以可以使用help(ord)查看该函数含义
#读入OpenCV模块
import cv2
#读入图像
im=cv2.imread('result.jpg')
#判断图像类型
type(im)