python3常用内置函数汇总

1. abs()

语法:

  • abs( x )

参数:

  • x -- 数值表达式,可以是整数,浮点数,复数。

返回值:

  • 函数返回 x()的绝对值,如果参数是一个复数,则返回它的大小。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


print("abs(-40) : ", abs(-40))
>>>abs(-40) :  40
print("abs(100.10) : ", abs(100.10))
>>>abs(100.10) :  100.1

 

2. all()

语法:

  • all(iterable)

参数:

  • iterable -- 可迭代对象(列表或元组)。

返回值:

  • 如果iterable存在0,‘ ’,或False等元素,all(iterable)返回False,否则返回True;

    注意:所以空元组、空列表返回值为True,这里要特别注意。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-



>>> all(['a', 'b', '', 'd'])   # 列表list,存在一个为空的元素
False
>>> all([0, 1,2, 3])          # 列表list,存在一个为0的元素
False
   
>>> all(('a', 'b', '', 'd'))   # 元组tuple,存在一个为空的元素
False
>>> all((0, 1, 2, 3))          # 元组tuple,存在一个为0的元素
False

>>> all(('a', 'b', 'c', 'd'))  # 元组tuple,元素都不为空或0
True
>>> all(['a', 'b', 'c', 'd'])  # 列表list,元素都不为空或0
True   
>>> all([])             # 空列表
True
>>> all(())             # 空元组
True

 

3. any()

语法:

  • any(iterable)

参数:

  • iterable -- 元组或列表

返回值:

  • 如果iterable中的存在不是空、0、false三者之一的元素,则返回True,否则返回False。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>>any(['a', 'b', 'c', 'd'])  # 列表list,元素都不为空或0
True
>>> any(['a', 'b', '', 'd'])   # 列表list,存在一个为空的元素
True
>>> any(('a', 'b', 'c', 'd'))  # 元组tuple,元素都不为空或0
True
>>> any(('a', 'b', '', 'd'))   # 元组tuple,存在一个为空的元素
True
 
>>> any([0, '', False])        # 列表list,元素全为0,'',false
False
>>> any((0, '', False))        # 元组tuple,元素全为0,'',false
False
>>> any([]) # 空列表
False
>>> any(()) # 空元组
False

 

4. ascii()

语法:

  • ascii(object)

参数:

  • object -- 对象。

返回值:

  •  返回一个表示该对象的字符串

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>> ascii('hello,world!')
"'hello,world!'"

 

6. bool()

语法:

  • bool(x)

参数:

  • x -- 要进行转换的参数

返回值:

  • 判断一个参数对象True还是False,其中只有0,False,None,‘ ’或者没有参数返回 False,其余返回True。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>>bool()
False
>>> bool(0)
False
>>> bool(“”)
False
>>>bool(None)
False
>>> bool(1)
True
>>>bool('a')
True
>>>bool(True)
True
>>> issubclass(bool, int)  # bool 是 int 子类
True

 

7. bytes()

语法:

  • class bytes([source[, encoding[, errors]]])

参数:

  • 如果 source 为整数,则返回一个长度为 source 的初始化数组;
  • 如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;
  • 如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;
  • 如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。
  • 如果没有输入任何参数,默认就是初始化数组为0个元素。

返回值:

  • 返回一个新的 bytes 对象。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

>>>bytes()
b''
>>>bytes(2)
b'\x00\x00'
>>>bytes([1,2,3,4])
b'\x01\x02\x03\x04'
>>> bytes('hello','ascii')
b'hello'

 

8. callable()

语法:

  • callable(object)

参数:

  • object -- 对象。

返回值:

  • 可调用返回 True,否则返回 False。
  • 如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。对于函数、方法、lambda 函式、 类以及实现了 __call__ 方法的类实例, 它都返回 True。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>>callable(0)
False
>>> callable("hello")
False
 
>>> def add(a, b):
...     return a + b
... 
>>> callable(add)             # 函数返回 True
True
>>> class A:                  # 类
...     def method(self):
...             return 0
... 
>>> callable(A)               # 类返回 True
True
>>> class B:
...     def __call__(self):
...             return 0
...
>>> callable(B)
True
>>> b = B()
>>> callable(b)               # 实例实现 __call__, 返回 True
True
>>> a = A()
>>> callable(a)               # 实例没有实现 __call__, 返回 False
False

 

9. chr()

语法:

  • chr(i)

参数:

  • i -- 可以是 10 进制也可以是 16 进制的形式的数字,数字范围为 0 到 1,114,111 (16 进制为0x10FFFF)。

返回值:

  •  返回值是当前整数对应的 ASCII 字符。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>>chr(0x30)
'0'
>>> chr(97) 
'a'
>>> chr(8364)
'€'

 

10. @classmethod

语法:

  • @classmethod

参数:

返回值:

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

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


class A(object):
    bar = 1
    def func1(self):  
        print ('foo') 
    @classmethod
    def func2(cls):
        print ('func2')
        print (cls.bar)
        cls().func1()   # 调用 foo 方法
 
A.func2()               # 不需要实例化

 

11. compile()

语法:

  • compile(source, filename, mode[, flags[, dont_inherit]])

参数:

  • source -- 字符串或者AST(Abstract Syntax Trees)对象。。
  • filename -- 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
  • mode -- 指定编译代码的种类。可以指定为 exec, eval, single。
  • flags -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。。
  • flags和dont_inherit是用来控制编译源码时的标志

返回值:

  •  返回表达式执行结果。

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>> str = "3 * 4 + 5"
>>> a = compile(str,'','eval')
>>> eval(a)
17

 

12. delattr()

语法:

  • delattr(object, name)

参数:

  • object -- 对象。
  • name -- 必须是对象的属性。

返回值:

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

>>>class Coordinate:
...    x = 10
 
>>>point1 = Coordinate() 
>>>print('x = {}'.format(point1.x))(
x = 10
>>>delattr(Coordinate, 'x')
 
>>>print('--删除x属性后--')
--删除x属性后--
# 触发错误
>>>print('x = {}'.format(point1.x))
Traceback (most recent call last):
  File "test.py", line 22, in <module>
    print('z = ',point1.z)
AttributeError: Coordinate instance has no attribute 'z'

 

13. zip()

语法:

  • zip([iterable, ...])

参数:

  • iterabl -- 一个或多个迭代器

返回值:

  • 返回一个对象

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-


>>> zipped = zip([1,2,3],[4,5,6])     # 返回一个对象
>>> zipped
<zip object at 0x103abc288>
>>> list(zipped)          # list() 转换为列表
[(1, 4), (2, 5), (3, 6)]
>>> list(zip(a,c))              # 元素个数与最短的列表一致
[(1, 4), (2, 5), (3, 6)]
 
>>> a1, a2 = zip(*zip([1,2,3],[4,5,6]))          # 与 zip 相反,zip(*) 可理解为解压,返回二维矩阵式
>>> list(a1)
[1, 2, 3]
>>> list(a2)
[4, 5, 6]

14. dict()

语法:

  • class dict(**kwarg)
    class dict(mapping, **kwarg)
    class dict(iterable, **kwarg)

参数:

  • **kwargs -- 关键字
  • mapping -- 元素的容器。
  • iterable -- 可迭代对象。

返回值:

  • 返回一个字典

实例:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

>>>dict()                        # 创建空字典
{}
>>> dict(a='a', b='b', t='t')     # 传入关键字
{'a': 'a', 'b': 'b', 't': 't'}
>>> dict(zip(['one', 'two', 'three'], [1, 2, 3]))   # 映射函数方式来构造字典
{'three': 3, 'two': 2, 'one': 1} 
>>> dict([('one', 1), ('two', 2), ('three', 3)])    # 可迭代对象方式来构造字典
{'three': 3, 'two': 2, 'one': 1}
>>>

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛定谔的猫96

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值