python3 内置函数

abs()

返回数字的绝对值。

>>> abs(-100)

100

>>> abs(100)

100

dict()

创建一个字典。

>>> dict() #构建空字典

{}

>>> dict(a='fengxinli',b='chenlijian') #传入关键字

{'a': 'fengxinli', 'b': 'chenlijian'}

>>> dict(zip(['one','two'],[1,2])) #映射函数方式构建字典

{'one': 1, 'two': 2}

>>> dict([('one',1),('two',2)]) #可迭代方式构建字典

{'one': 1, 'two': 2}

help()

查看函数或模块的详细用途。

>>> help(str)

Help on class str in module builtins:

 

class str(object)

| str(object='') -> str

| str(bytes_or_buffer[, encoding[, errors]]) -> str

......

min(),max()

返回给定参数的最小值/最大值,参数可以为序列。

>>> min(156,3,9,100)

3

>>> max(156,3,9,100)

156

>>> min('fengxinli','chenlijian')

'chenlijian'

setattr(),getattr()

与getattr()相对应,用于设置属性值,该属性不一定是存在的。

>>> class A(object):

... hua = 1

...

>>> a = A()

>>> getattr(a,'hua')

1

>>> setattr(a,'hua',100)

>>> getattr(a,'hua')

100

all()

判断可迭代的参数是否都为TRUE,如果是返回True,否则返回False。

>>> a = [a,1,'','chen'] #此处为空

>>> all(a)

False

>>> a = [a,1,' ','chen'] #此处有一个空格

>>> a.all()

>>> all(a)

True

dir()

不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。

>>> dir(list)

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

hex()

转换为十六进制。

>>> hex(13)

'0xd'

next()

返回迭代器的下一个项目

>>> it = iter([1, 2, 3, 4, 5])

>>> # 循环:

... while True:

... try:

... # 获得下一个值:

... x = next(it)

... print(x)

... except StopIteration:

... # 遇到StopIteration就退出循环

... break

...

1

2

3

4

5

slice()

实现切片对象,主要用在切片操作函数里参数传递。

>>> arr = [1,2,3,4,5,6,7,8,9,]

>>> arr[slice(5)]

[1, 2, 3, 4, 5]

any()

判断可迭代的任意一个参数是否为空。

>>> a = ['',2,'xixi']

>>> any(a)

True

>>> b = ['','']

>>> any(b)

False

divmod()

接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b)。

>>> divmod(10,3)

(3, 1)

id()

获取对象的内存地址。

>>> fengxinli = 'chenlijian'

>>> id(fengxinli)

15194176

sorted()

对所有的迭代对象进行排序操作。

sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

sorted 语法:

sorted(iterable, key=None, reverse=False)

iterable -- 可迭代对象。

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

>>> a = [25,99,6]

>>> b = [25,99,6]

>>> a.sort()

>>> a

[6, 25, 99]

>>> sorted(b)

[6, 25, 99]

>>> b

[25, 99, 6]

ascii()

把非ASCII码转化为ACSII码。

>>> a = [3,'hua','哈']

>>> ascii(a)

"[3, 'hua', '\\u54c8']"

enumerate()

将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']

>>>list(enumerate(seasons))

[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

>>>list(enumerate(seasons, start=1)) # 小标从 1 开始

[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

input(),print()

标准输入输出函数。

>>> a = input("请输入a的值:")

请输入a的值:34

>>> print(a)

34

oct()

转换为十进制。

>>> oct(0xffff)

'0o177777'

bin()

转化为二进制。

>>> bin(0xFFFF)

'0b1111111111111111'

eval()

执行一个字符串表达式,并返回表达式的值。

>>> eval('pow(2,2)')

4

>>> eval('2 + 2')

4

>>> n = 45

>>> eval("n + 40")

85

int(),float(),str()

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

>>> a = 3

>>> int(a)

3

>>> float(a)

3.0

>>> str(a)

'3'

open()

打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

注意:使用 open() 函数一定要保证关闭文件对象,即调用 close() 函数。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

>>> f = open('D:\\test.txt')

>>> f.read()

'hello world!'

bool()

将给定参数转换为布尔类型,如果没有参数,返回 False。

>>> bool()

False

>>> bool(4)

True

>>> bool(0)

False

>>> bool('')

False

>>> bool(None)

False

exec()

执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码。

>>> exec("print('chenlijian is a big pig')")

chenlijian is a big pig

ord(),chr()

ord() 函数是 chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。

>>> ord('3')

51

>>> chr(51)

'3'

sum()

求和。

>>> sum([1,2,3,4,5,6,7,8,9])

45

bytearray()

返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256。

>>> bytearray()

bytearray(b'')

>>> bytearray([1,2,3,4,5])

bytearray(b'\x01\x02\x03\x04\x05')

>>> bytearray('chenlijian','utf-8')

bytearray(b'chenlijian')

bytes()

返回一个新的 bytes 对象,该对象是一个 0 <= x < 256 区间内的整数不可变序列。它是 bytearray 的不可变版本。

>>> bytes()

b''

>>> bytes([1,2,3,4,5])

b'\x01\x02\x03\x04\x05'

filter()

过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。

该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。

def is_odd(n):

return n % 2 == 1

tmplist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

newlist = list(tmplist)

print(newlist)

输出结果为:

F:\study huahua\python>python test.py

[1, 3, 5, 7, 9]

issubclass()

判断参数 class 是否是类型参数 classinfo 的子类。

判断参数 class 是否是类型参数 classinfo 的子类。

pow()

幂运算。

>>> pow(4,3)

64

super()

是用于调用父类(超类)的一个方法。

iter()

生成迭代器。

>>> lis = [1,2,3,4,5]

>>> for i in iter(lis) :

... print(i)

...

1

2

3

4

5

tuple()

创建一个元组。

callable()

检查一个对象是否是可调用。如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。

>>> callable('chenlijian')

False

>>> def add(a,b) :

... return a + b

...

>>> callable(add)

True

format()

字符换格式化。

>>> "{2} {1} {0}".format("I","am","yours") #注意下标从0开始

'yours am I'

>>> site = {"name":"chenlijian","age":"24"} #通过字典设置参数

>>> print("姓名:{name},年龄:{age}".format(**site))

姓名:chenlijian,年龄:24

>>> mylist = ['chenlijian','is mine.'] #通过列表索引设置参数

>>> print("姓名:{0[0]},谁的:{0[1]}".format(mylist)) #"0"是必须的

姓名:chenlijian,谁的:is mine.

len()

求列表,集合,元组等的长度。

>>> len([1,2,3,4,5])

5

>>> len({1,'hua',3})

3

>>> len((1,2,4,6,7))

5

type()

查看当前所定义对象的类型。

>>> a = {1,'hua',3}

>>> type(a)

<class 'set'>

frozenset()

返回一个一个冻结的集合,冻结后的结合不能再添加或者删除任何元素。

>>> a = frozenset(range(5))

>>> a

frozenset({0, 1, 2, 3, 4})

list()

创建一个集合。

range()

range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。

list() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。

语法:range(stop) range(start, stop[, step])

>>> list(range(0,30,5))

[0, 5, 10, 15, 20, 25]

>>> list(range(0,-20,-4))

[0, -4, -8, -12, -16]

vars()

返回对象object的属性和属性值的字典对象。

>>> class A :

... a = 'huahua'

...

>>> print(vars(A))

{'__module__': '__main__', 'a': 'huahua', '__dict__': <attribute '__dict__' of 'A' objects>, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__doc__': None}

classmethod()

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

getattr()

返回一个对象属性值。

locals()

以字典类型返回当前位置的全部局部变量。

对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。

>>> def run(str) :

... ru = 1

... print(locals())

...

>>> run(5)

{'str': 5, 'ru': 1}

repr()

将对象转化为供解释器读取的形式。返回一个对象的 string 格式。

{'str': 5, 'ru': 1}

>>> a = {'huahua',1,5,'wu'}

>>> repr(a)

"{1, 5, 'wu', 'huahua'}"

zip()

将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。

>>> a = [1,4,6]

>>> b = [2,5,9]

>>> zip(a,b)

<zip object at 0x00E897B0>

>>> list(zip(a,b))

[(1, 2), (4, 5), (6, 9)]

compile()

将一个字符串编译为字节代码。

>>> str = "for i in 'chen' : print(i)"

>>> c = compile(str,'','exec')

>>> c

<code object <module> at 0x00E84F98, file "", line 1>

>>> exec(c)

c

h

e

n

globals()

以字典类型返回当前位置的全部全局变量。

>>> fengxinli = 'chenlijian'

>>> globals()

{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'hua': {'a': 'chenlijian', 'b': 'fengxinli'},

map()

提供的函数对指定序列做映射。Python 2.x 返回列表。Python 3.x 返回迭代器。

>>> def square(x) :

... return x ** 2

...

>>> map(square,[1,2,3,4,5])

<map object at 0x00E87BF0>

>>> list(map(square,[1,2,3,4,5]))

[1, 4, 9, 16, 25]

reversed()

反转迭代器。

>>> str = 'chenlijian'

>>> reversed(str)

<reversed object at 0x00E87C90>

>>> list(reversed(str))

['n', 'a', 'i', 'j', 'i', 'l', 'n', 'e', 'h', 'c']

_import_()

用于动态加载类和函数 。

>>> random.randint(1,10)

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

NameError: name 'random' is not defined

>>> import random

>>> random.randint(1,10)

9

complex()

创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。

>>> complex(1,4)

(1+4j)

>>> complex('7')

(7+0j)

>>> complex(7)

(7+0j)

hasattr()

用于判断对象是否包含对应的属性。

round()

四舍五入。

>>> round(3.666)

4

>>> round(3.466)

3

delattr()

删除对象的属性。

hash()

获取取一个对象(字符串或者数值等)的哈希值。

>>> hash('chenlijian')

-1589180721

>>> hash(100)

100

merroyview()

返回给定参数的内存查看对象.

>>> v = memoryview(bytearray("fengxinli","utf-8"))

>>> v[1]

101

>>> v[6]

110

>>> v[1:6]

<memory at 0x00E00A58>

>>> v[1:6].tobytes()

b'engxi'

set()

创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值