前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 63个内置函数(上篇),你都ok吗?

Python 63个内置函数(上篇),你都ok吗?

作者头像
小草AI
发布2019-10-29 15:31:32
3290
发布2019-10-29 15:31:32
举报
文章被收录于专栏:机器学习与python集中营

来源:进击的coder

Python一共有60多个内置函数,今天先梳理其中35 个

1 abs()

绝对值或复数的模

代码语言:javascript
复制
In [1]: abs(-6)
Out[1]: 6

2 all()  

接受一个迭代器,如果迭代器的所有元素都为真,那么返回True,否则返回False

代码语言:javascript
复制
In [2]: all([1,0,3,6])
Out[2]: False

In [3]: all([1,2,3])
Out[3]: True

3 any()  

接受一个迭代器,如果迭代器里有一个元素为真,那么返回True,否则返回False

代码语言:javascript
复制
In [4]: any([0,0,0,[]])
Out[4]: False

In [5]: any([0,0,1])
Out[5]: True

4 ascii()  

调用对象的repr() 方法,获得该方法的返回值

代码语言:javascript
复制
In [30]: class Student():
    ...:     def __init__(self,id,name):
    ...:         self.id = id
    ...:         self.name = name
    ...:     def __repr__(self):
    ...:         return  id =  +self.id + , name =  +self.name

In [33]: print(xiaoming)
id = 001, name = xiaoming

In [34]: ascii(xiaoming)
Out[34]:  id = 001, name = xiaoming

5 bin()

将十进制转换为二进制

代码语言:javascript
复制
In [35]: bin(10)
Out[35]:  0b1010

6 oct()

将十进制转换为八进制

代码语言:javascript
复制
In [36]: oct(9)
Out[36]:  0o11

7 hex()

将十进制转换为十六进制

代码语言:javascript
复制
In [37]: hex(15)
Out[37]:  0xf

8 bool()  

测试一个对象是True, 还是False.

代码语言:javascript
复制
In [38]: bool([0,0,0])
Out[38]: True

In [39]: bool([])
Out[39]: False

In [40]: bool([1,0,1])
Out[40]: True

9 bytes()  

将一个字符串转换成字节类型

代码语言:javascript
复制
In [44]: s = "apple"

In [45]: bytes(s,encoding= utf-8 )
Out[45]: b apple

10 str()  

字符类型数值类型等转换为字符串类型

代码语言:javascript
复制
In [46]: integ = 100

In [47]: str(integ)
Out[47]:  100

11 callable()  

判断对象是否可以被调用,能被调用的对象就是一个callable 对象,比如函数 str, int 等都是可被调用的,但是例子4 中xiaoming这个实例是不可被调用的:

代码语言:javascript
复制
In [48]: callable(str)
Out[48]: True

In [49]: callable(int)
Out[49]: True

In [50]: xiaoming
Out[50]: id = 001, name = xiaoming

In [51]: callable(xiaoming)
Out[51]: False

12 chr()

查看十进制整数对应的ASCII字符

代码语言:javascript
复制
In [54]: chr(65)
Out[54]:  A

13 ord()

查看某个ascii对应的十进制数

代码语言:javascript
复制
In [60]: ord( A )
Out[60]: 65

14 classmethod()  

classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。

代码语言:javascript
复制
In [66]: class Student():
    ...:     def __init__(self,id,name):
    ...:         self.id = id
    ...:         self.name = name
    ...:     def __repr__(self):
    ...:         return  id =  +self.id + , name =  +self.name
    ...:     @classmethod
    ...:     def f(cls):
    ...:         print(cls)

15 complie()  

将字符串编译成python 能识别或可以执行的代码,也可以将文字读成字符串再编译。

代码语言:javascript
复制
In [74]: s  = "print( helloworld )"

In [75]: r = compile(s,"<string>", "exec")

In [76]: r
Out[76]: <code object <module> at 0x0000000005DE75D0, file "<string>", line 1>

In [77]: exec(r)
helloworld

16 complex()

创建一个复数

代码语言:javascript
复制
In [81]: complex(1,2)
Out[81]: (1+2j)

17 delattr()  

删除对象的属性

代码语言:javascript
复制
In [87]: delattr(xiaoming, id )

In [88]: hasattr(xiaoming, id )
Out[88]: False

18 dict()  

创建数据字典

代码语言:javascript
复制
In [92]: dict()
Out[92]: {}

In [93]: dict(a= a ,b= b )
Out[93]: { a :  a ,  b :  b }

In [94]: dict(zip([ a , b ],[1,2]))
Out[94]: { a : 1,  b : 2}

In [95]: dict([( a ,1),( b ,2)])
Out[95]: { a : 1,  b : 2}

19 dir()  

不带参数时返回当前范围内的变量,方法和定义的类型列表;带参数时返回参数的属性,方法列表。

代码语言:javascript
复制
In [96]: dir(xiaoming)
Out[96]:
[ __class__ ,
  __delattr__ ,
  __dict__ ,
  __dir__ ,
  __doc__ ,
  __eq__ ,
  __format__ ,
  __ge__ ,
  __getattribute__ ,
  __gt__ ,
  __hash__ ,
  __init__ ,
  __init_subclass__ ,
  __le__ ,
  __lt__ ,
  __module__ ,
  __ne__ ,
  __new__ ,
  __reduce__ ,
  __reduce_ex__ ,
  __repr__ ,
  __setattr__ ,
  __sizeof__ ,
  __str__ ,
  __subclasshook__ ,
  __weakref__ ,

  name ]

20 divmod()  

分别取商和余数

代码语言:javascript
复制
In [97]: divmod(10,3)
Out[97]: (3, 1)

21 enumerate()  

返回一个可以枚举的对象,该对象的next()方法将返回一个元组。

代码语言:javascript
复制
In [98]: s = ["a","b","c"]
    ...: for i ,v in enumerate(s,1):
    ...:     print(i,v)
    ...:
1 a
2 b
3 c

22 eval()  

将字符串str 当成有效的表达式来求值并返回计算结果;取出字符串中内容

代码语言:javascript
复制
In [99]: s = "1 + 3 +5"
    ...: eval(s)
    ...:
Out[99]: 9

23 exec()  

执行字符串或complie方法编译过的字符串,没有返回值

代码语言:javascript
复制
In [74]: s  = "print( helloworld )"

In [75]: r = compile(s,"<string>", "exec")

In [76]: r
Out[76]: <code object <module> at 0x0000000005DE75D0, file "<string>", line 1>

In [77]: exec(r)
helloworld

24 filter()  

过滤器,构造一个序列,等价于

代码语言:javascript
复制
[ item for item in iterables if function(item)]

在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据。

代码语言:javascript
复制
In [101]: fil = filter(lambda x: x>10,[1,11,2,45,7,6,13])

In [102]: list(fil)
Out[102]: [11, 45, 13]

25 float()  

将一个字符串或整数转换为浮点数

代码语言:javascript
复制
In [103]: float(3)
Out[103]: 3.0

26 format()  

格式化输出字符串,format(value, format_spec)实质上是调用了value的format(format_spec)方法。

代码语言:javascript
复制
In [104]: print("i am {0},age{1}".format("tom",18))
i am tom,age18

27 frozenset()  

创建一个不可修改的集合。

代码语言:javascript
复制
In [105]: frozenset([1,1,3,2,3])
Out[105]: frozenset({1, 2, 3})

28 getattr()  

获取对象的属性

代码语言:javascript
复制
In [106]: getattr(xiaoming, name )
Out[106]:  xiaoming

29 globals()  

返回一个描述当前全局变量的字典

30 hasattr()

代码语言:javascript
复制
In [110]: hasattr(xiaoming, name )
Out[110]: True

In [111]: hasattr(xiaoming, id )
Out[111]: False

31 hash()  

返回对象的哈希值

代码语言:javascript
复制
In [112]: hash(xiaoming)
Out[112]: 6139638

32 help()  

返回对象的帮助文档

代码语言:javascript
复制
In [113]: help(xiaoming)
Help on Student in module __main__ object:

class Student(builtins.object)
 |  Methods defined here:
 |
 |  __init__(self, id, name)
 |
 |  __repr__(self)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables (if defined)
 |
 |  __weakref__
 |      list of weak references to the object (if defined)

33 id()  

返回对象的内存地址

代码语言:javascript
复制
In [115]: id(xiaoming)
Out[115]: 98234208

34 input()  

获取用户输入内容

代码语言:javascript
复制
In [116]: input()
aa
Out[116]:  aa

35 int()  

int(x, base =10) , x可能为字符串或数值,将x 转换为一个普通整数。如果参数是字符串,那么它可能包含符号和小数点。如果超出了普通整数的表示范围,一个长整数被返回。

代码语言:javascript
复制
In [120]: int( 12 ,16)
Out[120]: 18
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习与python集中营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档