python 函数定义和内置函数isinstance以及数据类型检查type的使用

参考:

http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00137473843313062a8b0e7c19b40aa8f31bdc4db5f6498000


#################################################


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



如果没有return语句,函数执行完毕后也会返回结果,只是结果为None

return None可以简写为return


######################################################3


空函数

如果想定义一个空函数,可以使用pass语句:

def hello(x, y, c):
     pass

pass可以用来作为占位符,比如现在没有想好如何写函数代码,可以先使用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)



  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值