内置函数:
内置函数是指内置到python解释器中的函数
以下是Python3版本所有的内置函数:
1. abs() 获取绝对值
示例:
|
1
2
3
|
print(abs(-1))
print(abs(0))
print(abs(-10))
|
其结果是:
|
1
2
3
|
1010 |
2. all() 接受一个迭代器,如果迭代器的所有元素都为真,那么返回True,否则返回False
示例:
|
1
2
3
|
print(all(""))
print(all((1,' ',2,None)))#输入一个元组,挨个从元组(1,' ',2,None)中取值,当传入none的话,返回false,故最后结果是false
print(all([1,3,6,8]))
|
其结果是:
|
1
2
3
|
TrueFalseTrue |
3. any() (与all有点相反)接受一个迭代器,如果迭代器里有一个元素为真,那么返回True,否则返回False
示例:
|
1
2
3
|
print(any(""))#传入空的字符串
print(any((1,' ',2,None)))#输入一个元组,挨个从元组(1,' ',2,None)中取值,有一个为真,即全部为真
print(any([0,1]))
|
其结果是:
|
1
2
3
|
FalseTrueTrue |
4. bin(), 将十进制转换成二进制
示例:
|
1
|
print(bin(3))
|
执行结果是:
|
1
|
0b11 |
5. oct(), 将十进制转换成8进制
示例:
|
1
|
print(oct(8))
|
执行结果是:
|
1
|
0o10 |
6. hex() 将十进制转换成16进制
示例:
|
1
|
print(hex(8))
|
执行结果是:
|
1
|
0x8 |
7.bool() 测试一个对象是True还是False.
示例:
|
1
2
3
|
print(bool(0))
print(bool(None))
print(bool(''))
|
执行结果是:
|
1
2
3
|
FalseFalseFalse |
8.bytes() 将一个字符串转换成字节类型
示例:
|
1
|
print(bytes("hello",encoding="utf-8"))
|
其执行结果是:
|
1
|
b'hello'
|
9. str() 将字符类型/数值类型等转换为字符串类型
示例:
|
1
2
|
print(str(1))
print(str(8))
|
其执行结果是:
|
1
2
|
18 |
10. challable() 判断对象是否可以被调用,能被调用的对象就是一个callables对象,比如函数和带有__call__()的实例
示例:
|
1
2
3
4
|
print(callable(sum))
print(callable(max))
print(callable([1,2,3]))
print(callable({"a":1}))
|
其执行结果是:
|
1
2
3
4
|
TrueTrueFalseFalse |
11.chr(),查看十进制数对应的ASCII字符
示例:
|
1
2
|
print(chr(67))
print(chr(68))
|
执行结果是:
|
1
2
|
CD |
12. ord() 查看某个ASCII对应的十进制数
示例:
|
1
2
|
print(ord("A"))
print(ord("g"))
|
执行结果是:
|
1
2
|
65103 |
13.real() 输出实数
示例:
|
1
2
3
|
x=2-4j
print(x.real)#输出实数
print(x.imag)#输出虚数
|
执行结果是:
|
1
2
|
2.0-4.0
|
14.imag()输出复数
示例:
|
1
2
3
|
x=2-4j
print(x.real)#输出实数
print(x.imag)#输出虚数
|
执行结果是:
|
1
2
|
2.0-4.0
|
15. dir() 不带参数时返回当前范围内的变量,方法和定义的类型列表,带参数时返回参数的属性,方法列表,以及可调用的方法
示例:
|
1
2
3
|
print(dir())
print(dir(sum))#查看sum对象下有什么可调用的方法
print(help(sum))
|
执行结果是:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
['__call__', '__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__self__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__text_signature__']
Help on built-in function sum in module builtins:
sum(iterable, start=0, /)
Return the sum of a 'start' value (default: 0) plus an iterable of numbers
When the iterable is empty, return the start value.
This function is intended specifically for use with numeric values and may
reject non-numeric types.
None |
16.divmod() 分别取商和余数
示例:
|
1
|
print(divmod(33,20))#取33除以20的商和余数,并以元组的方式呈现
|
执行结果是:
|
1
|
(1, 13)
|
17. enumerate() (输出索引和值)返回一个可以枚举的对象,该对象的next()方法将返回一个元组
示例:
|
1
2
3
4
|
for i in enumerate(['a','b','c','d']):
print(i)
for i in enumerate({'x':1,'y':2}):
print(i)
|
执行结果是:
|
1
2
3
4
5
6
|
(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
(0, 'x')
(1, 'y')
|
18.eval() 将字符串中的表达式提取出来并运行
示例:
|
1
|
print(eval("1+2+5*4/2"))
|
执行结果是:
|
1
|
13.0 |
19. filter() 过滤器,在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据
示例:
|
1
2
3
4
5
6
7
8
|
name_l=[{"name":"tom","age":222},
{"name": "alex", "age": 333},
{"name": "jack", "age": 133},
{"name": "sun", "age": 363},
]
res=filter(lambda d:d["age"]>200,name_l)
for i in res:
print(i)
|
执行结果是:
|
1
2
3
|
{'name': 'tom', 'age': 222}
{'name': 'alex', 'age': 333}
{'name': 'sun', 'age': 363}
|
20.float() 将一个字符串或整数转换为浮点数
示例:
|
1
|
print(float("123456"))
|
执行结果是:
|
1
|
123456.0 |
21.format() 格式化输出字符串
22. frozenset() 不可变集合
示例:
|
1
2
3
|
frozenset #不可变集合
f=frozenset({1,2,3,4})
print(type(f))
|
执行结果是:
|
1
2
|
<class 'frozenset'="">
</class>
|
23.set() 集合
示例:
|
1
2
3
4
5
|
# sets={1,2,3,4,4}
print(s)
s.add(5)
print(s)
|
执行结果是:
|
1
2
|
{1, 2, 3, 4}
{1, 2, 3, 4, 5}
|
set() 集合和 frozenset() 不可变集合的区别是:
set和frozenset最本质的区别是前者是可变的,后者是不可变的。当集合对象会被改变时(例如删除,添加元素),只能使用set
24.globals() 返回一个描述当前全局变量的字典
示例:
|
1
|
print(globals())
|
执行结果是:
|
1
2
|
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000000002169710>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins'="" (built-in)="">, '__file__': 'C:/Users/Administrator/PycharmProjects/py_fullstack_s4/day25/内置函数.py', '__cached__': None}
</module>
|
25.hash() 哈希值,是一种算法,用来校验数据的(hash不能用逆推,不能根据hash值来反推结果)
示例:
|
1
2
3
4
|
s='hello'
print(hash(s))
s='h'
print(hash(s))
|
执行结果是:
|
1
2
|
57854574686499468913261640564835463479 |
如果两个值相同,则hash值也是一样的
示例:
|
1
2
3
4
|
a="abcdddd"
b="abcdddd"
print(hash(a))
print(hash(b))
|
执行结果是:
|
1
2
|
-6798321890605724422
-6798321890605724422
|
26. id() 返回对象的内存地址
示例:
|
1
2
3
4
5
6
7
8
9
10
11
|
print(id("xuyuanyuan"))
a=1
b=2
print(id(a))
print(id(b))
print(a is b)
x='a'
y='a'
print(id(x))
print(id(y))
print(x is y)
|
执行结果是:
|
1
2
3
4
5
6
7
|
3218091214284647361428464768False56500005650000True |
27.input() 获取用户输入内容
示例:
|
1
|
a=input("请输入您的密码:")
|
执行结果:
|
1
|
请输入您的密码: |
28.int() 将一个字符串或数值转换为一个普通整数
示例:
|
1
|
print(int(1))
|
执行结果是:
|
1
|
1 |
29.isinstance() 检查对象是否是类的对象,返回True或False
示例:
|
1
2
3
|
num=1 #num=int(1)
print(type(num)) #查看num的类型
print(isinstance(num,int)) #判断num是否为int类型
|
执行结果是:
|
1
2
3
|
<class 'int'="">
True</class>
|
30.iter() 可用来判断是否是可迭代对象
示例:
|
1
2
3
4
5
6
|
l=[1,2,3,4]
i=iter(l)
print(next(i))
print(next(i))
print(next(i))
print(next(i))
|
执行结果是:
|
1
2
3
4
|
1234 |
31.len() 返回对象长度,参数可以是序列类型(字符串,元组或列表)或映射类型(如字典)
示例:
|
1
2
|
l=[1,2,3,4]
print(len(l))
|
执行结果是:
|
1
|
4 |
32. list() 转换成列表
示例:
|
1
2
|
l={1,2,3,4,5,12}
print(list(l))
|
执行结果是:
|
1
|
[1, 2, 3, 4, 5, 12]
|
33.locals() 打印当前可用的局部变量的字典
示例:
|
1
|
print(locals())
|
执行结果是:
|
1
2
|
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000000001DA9710>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins'="" (built-in)="">, '__file__': 'C:/Users/Administrator/PycharmProjects/py_fullstack_s4/day25/内置函数.py', '__cached__': None, 'l': [1, 2, 3, 4]}
</module>
|
34. map() 合并映射
示例:
|
1
2
3
4
5
6
7
8
|
#map# 合并映射l=[1,2,3,4,5]
# 方法一:x=[i**2 for i in l] #求平列表里的平方值,并以列表的方式呈现
print(x)
# 方法二:res=map(lambda x:x**2,l)
print(list(res))
|
执行结果是:
|
1
2
|
[1, 4, 9, 16, 25]
[1, 4, 9, 16, 25]
|
35.max() 返回给定元素里最大值
1 max(iterable [,args...][, key]) 2 如果只提供iterable参数(可迭代),函数返回可遍历对象(如:字符串,元组或列表)中最大的非空元素。 3 如果提供多个参数,那么返回值最大的那个参数。 4 可选参数key是单参数的排序函数。 5 如果提供key参数,必须是以命名的形式,如:max(a, b, c, key = fun)
示例1:
|
1
2
|
print(max(1,2,3,4,10,3))
print(min(1,2,3,4,10,3))
|
执行结果是:
|
1
2
|
101 |
示例2:
|
1
2
3
4
5
6
7
8
9
10
|
salaries={"egon":20,
"alex":40,
"wupeiqi":30,
"yuanhao":10}
def get_value(k):
return salaries[k]
print(max(salaries,key=get_value))#取工资最高的人的名字
print(min(salaries,key=get_value))#取工资最低的人的名字
print(max(salaries,key=lambda k:salaries[k]))#取工资最高的人的名字
print(min(salaries,key=lambda k:salaries[k]))#取工资最低的人的名字
|
执行结果是:
|
1
2
3
4
|
alexyuanhaoalexyuanhao |
36. min() 返回给定元素里最小值
1 min(iterable [,args...][, key]) 2 如果只提供iterable参数,函数返回可遍历对象(如:字符串,元组或列表)中最小的非空元素。 3 如果提供多个参数,那么返回值最小的那个参数。 4 可选参数key是单参数的排序函数。 5 如果提供key参数,必须是以命名的形式,如:max(a, b, c, key = fun)
示例1:
|
1
2
|
print(max(1,2,3,4,10,3))
print(min(1,2,3,4,10,3))
|
执行结果是:
|
1
2
|
101 |
示例2:
|
1
2
3
4
5
6
7
8
9
10
|
salaries={"egon":20,
"alex":40,
"wupeiqi":30,
"yuanhao":10}
def get_value(k):
return salaries[k]
print(max(salaries,key=get_value))#取工资最高的人的名字
print(min(salaries,key=get_value))#取工资最低的人的名字
print(max(salaries,key=lambda k:salaries[k]))#取工资最高的人的名字
print(min(salaries,key=lambda k:salaries[k]))#取工资最低的人的名字
|
执行结果:
|
1
2
3
4
|
alexyuanhaoalexyuanhao |
37.next() 返回促进运行
示例:
|
1
2
3
4
5
|
l=[1,2,3,4,5]
i=iter(l)
print(next(i))
print(next(i))
print(next(i))
|
执行结果是:
|
1
2
3
|
123 |
38.open() 打开文件
示例:
|
1
2
3
|
with open("a.txt",) as f:
line=f.readlines()
print(line)
|
执行结果是:
|
1
|
['nnnajjab xubs\n', 'bxbsbeux']
|
39.pow() 先求次方再取余
示例:
|
1
|
print(pow(3,3,4))#求3的3次方,再除以4,得到的余数
|
执行结果是:
|
1
|
3 |
40.range() 根据需要生成一个指定范围的数字,可以提供你需要的控制来迭代指定的次数
示例:
|
1
2
|
for i in range (1,5):
print(i)
|
执行结果:
|
1
2
3
4
|
1234 |
41. reversed() 反转,逆序对象
示例:
|
1
2
|
l=[1,30,3,45,9,19]
print(list(reversed(l)))
|
执行结果:
|
1
|
[19, 9, 45, 3, 30, 1]
|
42.slice() 切片功能
示例:
|
1
2
3
|
l=[1,30,3,45,9,19]
s=slice(1,3)
print(l[s])
|
执行结果是:
|
1
|
[30, 3]
|
43.sorted() 排序
示例:
salaries={"egon":20, "alex":40, "wupeiqi":30, "yuanhao":10}# sorted#排序(可升降排序)print(sorted(salaries,key=lambda a:salaries[a]))#将工资从小到大排序
执行结果:
|
1
|
['yuanhao', 'egon', 'wupeiqi', 'alex']
|
44.str() 转换成字符串
示例:
|
1
2
|
l=[1,2,3,4]
print(type(str(l)))
|
执行结果是:
|
1
2
|
<class 'str'="">
</class>
|
45.sum() 求和
示例:
|
1
2
|
l=[1,2,3,4]
print(sum(l))
|
执行结果是:
|
1
|
|
46.vars() 取的结果为字典
示例:
|
1
2
|
print(vars())
print(vars()is locals())
|
执行结果是:
|
1
2
3
|
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000000001DB9710>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins'="" (built-in)="">, '__file__': 'C:/Users/Administrator/PycharmProjects/py_fullstack_s4/day25/内置函数.py', '__cached__': None}
True</module>
|
47.zip() 将对象逐一配对,以元组的方式
示例:
|
1
2
3
4
5
|
# zip#拉链,以元祖的方式s="hello"
l=[1,2,3,4,5]
for i in zip(s,l):
print(i)
|
执行结果是:
|
1
2
3
4
5
|
('h', 1)
('e', 2)
('l', 3)
('l', 4)
('o', 5)
|
48.__import__()
示例:
|
1
2
3
4
|
import time
print(time)
m=__import__("time")#可以传参
print(m)
|
执行结果:
|
1
2
3
|
<module 'time'="" (built-in)="">
<module 'time'="" (built-in)="">
</module></module>
|