Python-常用的内置函数

时间:2021-04-21 19:14:29

Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。接下来,记录一些本人自主学习Python的一些笔记:

all

一个可迭代对象的所有元素都为真,则返回True

print(all([1,2,3]))   # True
print(all([0,1,2])) # False

any

一个可迭代对象中只要有一个元素为真,则返回True

print(any([1,0,0]))     # True
print(any([0])) # False

bin

将一个十进制数字转化成一个二进制数字的字符串

print(bin(2))   # 0b10

hex

将一个十进制数字转化成一个十六进制数字的字符串

print(hex(2))   # 0x2

oct

将一个十进制数字转化成一个八进制数字的字符串

print(oct(8))   # 0o2

callable

判断一个对象是否是可以被调用的,那么什么样才是可被调用的呢,即类似于“test()”这样的写法。函数与类皆可以被调用

b = 2
def func():
pass
print(callable(b),callable(func)) # False True

exec

将一串代码字符串,以代码的形式执行

code = '''
n = 0
while n < 10:
print(n)
n+=1
'''

exec(code)

执行结果:

Python-常用的内置函数

eval

将一串基本数据类型的字符串,转化成基本数据类型

s_list = "[1,2,3,4]"
l = eval(s_list) # 此时l已经是一个列表对象了
print(l[0]) # 1

dir

查看某个类型下的所有方法

l = [1,2,3]
print(dir(l)) # 此时将会打印列表的所有方法

divmod

获取两个数相除后的商和余数

print(divmod(5,2))  # 结果:(2,1)。5除以2得到商2,余数为1

max

获取某个可迭代对象的最大值

print(max([4,3,2,8]))   # 结果:8

min

获取某个可迭代对象的最小值

print(min([4,3,2,8]))   # 结果:2

sum

获取某个可迭代对象的和

print(sum([4,3,2,8]))   # 结果:17

pow(a,b)

获取a的b次方

print(pow(3,3))     # 结果:27

type

查看数据类型

print(type("abc"))  # 结果:<class 'str'>

round

保留小数。注意:它的保留方式是向下保留,并不是四舍五入

print(round(1.345,2))   # 结果:1.34

filter

将一个可迭代对象按某种特定方式过滤,生成一个新的可迭代对象

f = filter(lambda x : x > 5,range(10))
for index in f:
print(index) # 打印结果:6,7,8,9

map

将一个可迭代对象按某种特定方式处理,生成一个新的可迭代对象。效果与列表生成式一样

m = map(lambda x : x * 2,range(10))
for index in m:
print(index)

# 列表生成式写法
l = [x * 2 for x in range(10)]
for index in l:
print(index)

执行结果:

Python-常用的内置函数

frozenset

将一个可迭代对象转化成一个不可变的,如将列表原来可以调用append方法,转化以后将不可调用append方法

sorted

排序

# 列表的排序
l = [3,2,4,8]
print(sorted(l)) # 结果:[2,3,4,8]

# 字典的排序。众所周知,字典是无序的,首先先将字典转化成一个元组列表,在根据key或者value排序
d = {"b":2,"d":1,"a":4}
l = sorted(d.items()) # 根据key排序
print(l) # 结果:[('a', 4), ('b', 2), ('d', 1)]

l = sorted(d.items(),key=lambda x:x[1]) # 根据value排序
print(l) # 结果:[('d', 1), ('b', 2), ('a', 4)]

zip

将两个或多个列表拼接成一个元组列表

list_1 = [1,2,3,4]
list_2 = ['a','b','c','d']
z = zip(list_1,list_2)
for index in z:
print(index)

执行结果:

Python-常用的内置函数

__import__

相当于import,只不过import()中传入的模块的字符串名称