Python内置函数
渴望力量的哈士奇 人气:0前面的一些章节我们学习了 python 的一些常用的 内置包、内置模块 与 第三方包、第三方模块。今天的章节我们来总结一下 python 中常用的 内置函数,这里可能包括我们之前学习过的和未学习过的。我们一同进行一下简单的介绍。
常用函数
函数名 | 参数 | 介绍 | 返回值 | 示例 |
---|---|---|---|---|
abs | number | 返回数字的绝对值 | 正数字 | abs(-1) |
all | list | 判断列表内容是否全是 true | bool | all([0, ‘123’]) |
help | object | 打印对象的用法 | 无 | help(list) |
enumerate | iterable | 帮助我们在for循环,迭代时显示索引 | 无 | for index, item in enumerate(list) |
input | str | 命令行输入消息 | str | input(‘请输入信息:’) |
isinstance | object,type | 判断对象是否是某种类型 | bool | input(‘请输入信息:’) |
type | object | 判断对象的类型 | str | type(‘test’) |
vars | instance | 返回实例化的字典信息 | dict | |
dir | object | 返回对象中所有可用的方法和属性 | list | dir(‘asd’) |
hasattr | object, key | 判断对象中,是否有某个属性 | bool | hasattr(‘1’, upper) |
setattr | obj,key,value | 为实例化对象添加属性与值 | 无 | setattr(instance, ‘run’, ‘go’) |
getattr | object, key | 通过对象获取属性 | 任何类型 | getattr(obj, key) |
any | iterable | 判断内容是否有 true 值 | bool | any([1, 0, ‘’]) |
接下来我们看一看 在 ipython 终端 演示的这些函数的示例。
abs 函数 演示
In [1]: abs(-6) Out[1]: 6 In [2]: abs(0) Out[2]: 0 In [3]: abs(6.6) Out[3]: 6.6
all 函数 演示
In [4]: result = all(['P' in 'Python', True, None]) In [5]: print(result) # >>> 执行结果为 :False In [6]: result = all([True, 'test', 10, len('python')]) In [7]: print(result) # >>> 执行结果为 :True
enumerate 函数 演示
In [8]: books = ['爬虫从入门到入狱', '面向监欲编程', '数据库开发从删库到跑路'] In [9]: for index, item in enumerate(books): ...: print(index, item) ...: # >>> 执行结果如下: # >>> 0 爬虫从入门到入狱 # >>> 1 面向监欲编程 # >>> 2 数据库开发从删库到跑路
input 函数 演示
1.模拟输入用户名和密码
2.打印输出用户名和密码
3.打印输出密码的长度和类型
username = input("请输入用户名:") password = input("请输入密码:") if __name__ == '__main__': print("用户名为:" + username) print("密码为:" + password) print("密码长度为:" + str(len(password))) print("密码的类型为:" + str(type(password)))
输出结果如下图:
isinstance 函数 演示
In [10]: name = 'Neo' In [11]: isinstance(name, str) Out[11]: True In [12]: isinstance(name, int) Out[12]: False
vars 函数 演示
描述:
vars() 函数返回对象object的属性和属性值的字典对象。
语法
vars() 函数语法:vars([object])
参数
object – 对象
返回值
返回对象object的属性和属性值的字典对象,如果没有参数,就打印当前调用位置的属性和属性值 类似 locals()。
实例:
class Test(object): def __init__(self): self.a = 1 self.b = 2 def to_vars(self): return vars(self) test = Test() print test.to_vars()
hasattr 函数 演示
hasattr() 函数用于判断对象是否包含对应的属性。
hasattr(object, name)
object – 对象。
name – 字符串,属性名。
return
如果对象有该属性返回 True,否则返回 False。
实例:
class variable: x = 1 y = 'a' z = True test = variable() print(hasattr(test, 'x')) print(hasattr(test, 'y')) print(hasattr(test, 'z')) print(hasattr(test, 'no')) # >>> 执行结果如下: # >>> True # >>> True # >>> True # >>> False
setattr 函数 演示
给对象的属性赋值,若属性不存在,先创建再赋值。
语法格式如下:
setattr(object,name,value)
object:理解为对象,也就是要设置的对象
name:理解为名字,也就是要设置的属性名(字符串格式哟!)
value:理解为值,也就是要设置的属性值
class function_demo(): name = 'demo' def run(self): return "hello function" functiondemo = function_demo() res = hasattr(functiondemo, 'age') # 判断age属性是否存在,False print(res) setattr(functiondemo, 'age', 18 ) #对age属性进行赋值,无返回值 res1 = hasattr(functiondemo, 'age') #再次判断属性是否存在,True print(res1) # >>> 执行结果如下: # >>> False # >>> True
注意:setattr 与 hasattr 函数,这两者本身就是一个函数,set顾名思义就是设置的意思,而has就是检测是否存在的意思.
getattr 函数 演示
获取对象object的属性或者方法,如果存在则打印出来,如果不存在,打印默认值,默认值可选。
注意:如果返回的是对象的方法,则打印结果是:方法的内存地址,如果需要运行这个方法,可以在后面添加括号()
class function_demo(): name = 'neo' def run(self): return "neo like run" functiondemo = function_demo() getattr(functiondemo, 'name') # 获取name属性,存在就打印出来--- neo getattr(functiondemo, "run") # 获取run方法,存在打印出 方法的内存地址 getattr(functiondemo, "age", 18) # 获取不存在的属性,返回一个默认值;这里的默认值为 '18' getattr(functiondemo, "age") # 获取不存在的属性,则会报错,如下图:
执行结果示意如下图:
any 函数 演示
any 函数用于判断给定的可迭代参数 iterable 是否全部为 False ,则返回 False,如果有一个为 True,则返回 True。
元素除了是 0、空、False 外都算 True。
函数等价于:
def any(iterable): for element in iterable: if element: return True return False
语法:any(iterable)
示例如下,辅助理解:
>>> a = [0, False, [], {}, ()] >>> b = [0, False, [], {}, (), [[]]] >>> c = {} >>> any(a) False >>> any(b) # b 中的元素 [[]] 为 True 。 True >>> any(c) False
加载全部内容