python:类2——有关类和对象的BIF内置函数

1、检查、判断

issubclass(class, classinfo)如果第一个参数是第二个参数的子类,返回true,注意:

  • 非严格(自己可以认为是自己的子类);
  • 第二个参数可以是由多个class组成的tuple,有任何一个合适,就true;
  • 其他情况对抛出typeerror

isinstance(object, classinfo)检查某第一个参数实例对象是否属于一个类

  • 第二个参数可以是由多个class组成的tuple,有任何一个合适,就true;
  • 如果第一个参数传入不是对象类型,永远返回false
  • 如果第二个参数不是类或者由类对象组成的tuple,会抛出TypeError

2、点操作符号访问对象属性,attribute相关:

hasattr(object, name)  对象是否有制定的属性name,name需要用引号括起来,否则他会认为是变量,

getattr(object, name [, default])  获得对象object的name属性,如果不存在,返回default,若没有设置default,不存在时会抛出AttributeError

  • getattr(A, ‘b‘, ‘您所访问的属性不存在‘)

setattr(object, name, value)  设置对象name属性的值为value,若属性不存在会新建新的属性

delattr(object, name)  删除制定的属性,若不在抛出AttributeError

property()  通过属性设置属性

  • x = property(getSize, setSize, delSize)设置一个x属性,能操作getSize、setSize、delSize(提前自己写好)方法
  • x可以作为调用接口,里边的方法可以大改,比如改名字等,增加方法。
  • 工作原理:组合了几个魔法方法
时间: 2024-10-10 23:30:31

python:类2——有关类和对象的BIF内置函数的相关文章

Python学习之旅 —— 基础篇(四)内置函数、装饰器

本篇要点: 内置函数 装饰器 一.内置函数 # abs() :取绝对值 >>> res = abs(-10) >>> print(res) 10 # 0,None,"",{},[],() 布尔值都为空 # all(),any() 判断值的真假 # all() 所有为真才为真 p = all([0,1,2,3]) # 0为False,所有p 是False print(p) # any() 任意一个为真即为真 p = any((0,""

Python基础------生成器表达式形式、面向过程编程、内置函数部分

生成器表达式形式 直接上代码 1 # yield的表达式形式 2 def foo(): 3 print('starting') 4 while True: 5 x=yield #默认返回为空,实际上为x=yield None 6 print('value',x) 7 g=foo() 8 print(g.__next__()) #停到yield位置,生成器初始化,遇到yield返回一个None 9 print('---分割线君---') 10 print(g.send(1)) #传值给yield,

【Python】从简单案列中揭示常用内置函数以及数据类型

前面提到了BIF(内置函数)这个概念,什么是内置函数,就是python已经定义好的函数,不需要人为再自己定义,直接拿来就可以用的函数,那么都有哪些BIF呢? 可以在交互式界面(IDLE)输入这段代码,注意是两边都是双下划线 1 dir(__builtins__) 则可以查看不同python版本都有哪些BIF 就看这些就能很明显的看出python3和python2还是有很多区别的,想看哪个BIF的用法就直接help()它看官方文档就行,这里要说的是,python官方的代码其实很少的语法,基本都是很

python学习笔记(五):装饰器、生成器、内置函数、json

这周学习了装饰器和生成器,写下博客,记录一下装饰器和生成器相关的内容. 一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里面每个函数都加一个功能,用来统计每个函数的运行时间是多少,找出来运行比较慢的函数,来优化代码,就需要添加一个新的功能,来统计程序的运行时间,那这样的话,就得修改每个函数了,需要改代码,但是代码特别多,改完了公司倒闭了,这时候装饰

Python学习笔记四(迭代器、生成器、内置函数)

一.迭代器 1.迭代器定义 迭代是一个重复的过程,每次重复一次迭代,并且每次迭代的结果都是下一次迭代的初始值. l = ["aaa","bbb","ccc"] count = 0 while count< len(l): #每次重复完成后count都是下一次的初始值 print(l[count]) count+=1 需要迭代器的原因:对于序列类型str.list.tuple可以依赖索引迭代取值,对于dict.set.文件需要提供不依赖索引取

Python基础学习笔记(七)常用元组内置函数

参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-tuples.html 3. http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000 Python常用元组内置函数: 序号 方法及描述 1 cmp(tuple1, tuple2)比较两个元组元素. 2 len(tuple)计算元组元素个数. 3 max(tuple)

Python基础学习笔记(八)常用字典内置函数和方法

参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-dictionary.html 3. http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000 常用操作字典的内置函数: 序号 函数及描述 1 cmp(dict1, dict2)比较两个字典元素. 2 len(dict)计算字典元素个数,即键的总数. 3 str(di

python登录加随机验证码校验程序(装饰器内置函数的理解)

使用说明:为了防止恶意攻击,同时不对原先用户登录验证的方法代码进行改动,在检验账号密码方法外再套一层校验方法(验证码),过滤非人为的攻击. 代码如下: #!/usr/bin/env python # -*- coding:utf-8 -*- import os import json import random ###取得绝对路径下的账号密码文件 BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) filepa

python序列(七)序列操作的常用内置函数

1.len(列表):返回:列表中的元素个数,同样适用于元组.字典.集合.字符串等. max(列表).min(列表):返回列表中的最大或最小元素同样适用于元组.字典.集合.range对象等. sum(列表):对列表的元素进行求和运算,对非数值型列表运算需要指定start参数,同样适用于元组.range. >>> sum(range(1,11)) #sum()函数的start参数默认为0 55 >>> sum(range(1,11),5) #指定start参数为5 60&g