1、abs() 获取绝对值
a = -10
print(a.__abs__()) 结果:
10
2、all() 接收一个迭代器,如果跌电气的所有元素都为真,那么返回True,否则返回False
tmp_1 = ['python',123]
print(all(tmp_1))
tmp_2 = []
print(all(tmp_2))
tmp_3 = [0]
print(all(tmp_3))
tmp_4 = ''
print(all(tmp_4)) 结果:
True
True
False
True
3. any() 接受一个迭代器,如果迭代器里有一个元素为真,那么返回True,否则返回False
4. ascii() 调用对象的__repr__()方法,获得该方法的返回值.
5. bin(), 6. oct(), 7. hex() 三个函数功能为:将十进制数分别转换为2/8/16进制。
8. bool() 测试一个对象是True还是False,空,None,0布尔值都是False,其余是True
9、bytes() 将字符串
s = 'python'
x = bytes(s, encoding='utf-8')
print(x)
a = '王'
s = bytes(a, encoding='utf-8')
print(s) 如果:
b'python'
b'\xe7\x8e\x8b'
10、str() 将字符类型、数值类型转换成字符串类型
print(str(b'\xe7\x8e\x8b',encoding='utf-8'))
print(str(1))
print(type(str(1))) 如果:
王
1
<class 'str'>
11. challable() 判断对象是否可以被调用,能被调用的对象就是一个callables对象,比如函数和带有__call__()的实例
12、chr() 打印ASCII表
print(chr(65)) 结果:
A
12、dir() 打印某一个对象有哪些方法
print(dir(all)) 结果:
['__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__']
13、divmod() 分别取商和余数,比如网页搜索分页,一页中有多少条记录,余下的单放一页
print(divmod(20,8)) 结果:
(2, 4)
14、enumerate() 返回一个可以枚举的对象,该对象的next()方法将返回一个元组
test = ['a','b','c']
for k,v in enumerate(test):
print(k+1,v) 结果:
1 a
2 b
3 c
15、eval() 将字符串中得数据结构提取出来
例子1
dic = {'name':'pluto'}
print(dic.get('name'))
print(type(dic)) dic_str = str(dic)
print(type(dic_str)) dic_dic = eval(dic_str)
print(type(dic_dic))
print(dic_dic.get('name')) 结果:
pluto
<class 'dict'>
<class 'str'>
<class 'dict'>
pluto 例子2
s = "1+2*3"
print(type(s))
print(eval(s)) 结果:
7
16、 hash() 哈希值,可哈希的数据类型即不可变数据类型,不可哈希的数据类型即可变数据类型
1 hash(object)
2 如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数,在字典查找中,哈希值用于快递比价字典的键。
3 两个数值如果相等,则哈希值也相等。
17、help() 帮助文档
print(help(all)) 查看帮助
Help on built-in function all in module builtins: all(iterable, /)
Return True if bool(x) is True for all values x in the iterable. If the iterable is empty, return True. None
18、bin(),oct(),hex() 三个函数功能为:将十进制数分别转换为2/8/16进制。
print(bin(10))
print(oct(10))
print(hex(10)) 结果:
0b1010
0o12
0xa
19、id() 返回对象的内存地址
20、isinstance() 检查对象是否是类的对象,返回True或False
print(isinstance(1,str))
print(isinstance(1,int))
print(isinstance({1,2,'s'},set)) 结果:
False
True
True
21、 len() 返回对象长度,参数可以是序列类型(字符串,元组或列表)或映射类型(如字典)
22、 globals() 返回一个描述当前全局变量的字典
name = '对象'
print(globals()) 结果:
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x7f06f2534c88>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': '/opt/zifuchuangeshihua.py', '__cached__': None, 'name': '对象'}
23、 locals() 打印当前可用的局部变量的字典
24、 max() 返回给定元素里最大值
25、 min() 返回给定元素里最小值
max,min
1、max函数处理的是可迭代对象,相当于一个for循环取出每个元素进行比较,注意,不同类型之间的不能比较
2、每个元素间进行比较,是从每个元素的第一个位置依次比较,如果这一个位置分出来大小,后面的就不需要比较了,直接取出这两个元素的大小
age_dic = {'a1':10,'g3':20,'e2':30}
#字典默认比较的是key
for item in zip(age_dic.values(),age_dic.keys()):
print(item) print(list(max(zip(age_dic.values(),age_dic.keys()))))
# print(list(min(zip(age_dic.values(),age_dic.keys())))) l_t = [
(5,'e'),
(1,'a'),
(6,''),
(3,'b'),
(4,'d'),
]
print(list(max(l_t))) 结果:
(10, 'a1')
(20, 'g3')
(30, 'e2')
[30, 'e2']
[6, '']
l = [1,2,3,100,-1,2]
print(max(l))
print(min(l)) 结果:
100
-1
终极晚玩法
people = [
{'name':'charon','age':10},
{'name':'pluto','age':1100},
{'name':'peter','age':12},
{'name':'alex','age':13}
]
print(max(people,key=lambda dic:dic['age'])) #ret=[]
#for item in people:
# ret.append(item['age'])
#print(ret)
#print(max(ret)) 结果:
{'name': 'pluto', 'age': 1100}
[10, 1100, 12, 13]
1100
min类似
26、delattr() 删除对象的属性
27、dict() 创建数据字典
28、float() 讲一个字符串或整数转换为浮点数
29、format() 格式化输出字符串,format(value, format_spec)实质上是调用了value的
30、frozenset() 创建一个不可修改的集合
31、 getattr() 获取对象的属性
32、getattr() 获取对象的属性
33、int() 将一个字符串或数值转换为一个普通整数
34、issubclass() 检查一个类是否是另一个类的子类。返回True或False
35、open() 打开文件
36、range() 根据需要生成一个指定范围的数字,可以提供你需要的控制来迭代指定的次数
37、set() 集合
38、str() 字符串构造函数
39、sum() 求和
40、tuple() 元组构造函数
41、type() 显示对象所属的类型
42、zip() 将对象逐一配对
list_1 = [1,2,3]
list_2 = ['a','b','c']
s = zip(list_1,list_2)
print(list(s)) 运行结果: [(1, 'a'), (2, 'b'), (3, 'c')]
a = [(1,),(2,),(3,)]
r = zip(*a)
print(list(r))
运行结果:
[(1, 2, 3)]
print(list(r)[0])
运行结果:
(1, 2, 3)
print(list(zip(('a','b','c'),(1,2,3))))
print(list(zip(('a','b','c'),(1,2,3,4))))
print(list(zip(('a','b','c','d'),(1,2,3)))) p = {'name':'charon','age':18,'gender':'F'}
print(list(zip(p.keys(),p.values()))) print(list(zip('hello','12345'))) 结果:
[('a', 1), ('b', 2), ('c', 3)]
[('a', 1), ('b', 2), ('c', 3)]
[('a', 1), ('b', 2), ('c', 3)]
[('name', 'charon'), ('age', 18), ('gender', 'F')]
[('h', '1'), ('e', '2'), ('l', '3'), ('l', '4'), ('o', '5')]
43、reversed 翻转
l = [1,2,3]
print(list(reversed(l)))
print(l) 结果:
[3, 2, 1]
[1, 2, 3]
44、round 四舍五入
num = 4.6
print(round(num)) 结果:
5
45、slice 切片
srt_slice = 'charonpluto'
s1 = slice(3,5)
s2 = slice(1,9,2)
print(srt_slice[s1])
print(srt_slice[s2])
#硬切,可读性不是太强
print(srt_slice[3:5]) 结果:
ro
hrnl
ro
46、sorted 排序,不同类型不能排序,本质就是比较
l = [1,3,5,2,4]
print(sorted(l)) people = [
{'name':'charon','age':10},
{'name':'pluto','age':1100},
{'name':'peter','age':12},
{'name':'alex','age':13}
] print(sorted(people,key=lambda dic:dic['age'])) 结果:
[1, 2, 3, 4, 5]
[{'name': 'charon', 'age': 10}, {'name': 'peter', 'age': 12}, {'name': 'alex', 'age': 13}, {'name': 'pluto', 'age': 1100}]
47、open
文件处理读操作
# f=open('陈粒',encoding='utf-8')
# data=f.read()
# print(data)
# f.close() # f=open('xxx')
# data=f.read()
# print(data) #r w a
f=open('陈粒','r',encoding='utf-8')
# data=f.read()
# # print(data)
# print(f.readable())#是否是可读
# print('第1行',f.readline(),end='')
# print('第2行',f.readline())
# print('第3行',f.readline())
# # for i in range(1):
# # pass
# print('第4行',f.readline())
# print('第5行',f.readline())
# print('第6行',f.readline())
# print('第7行',f.readline()) data=f.readlines()
print(data)
f.close()
文件处理写操作#文件存在先清空掉,在操作,不存在就创建一个新的
f=open('陈粒1','w',encoding='utf8')
# f.read()
f.write('11111111\n')
f.write('222222222\n')
f.write('333\n4444\n555\n')
# f.writable()#是否是可写
f.writelines(['555\n','6666\n'])
f.writelines(['555\n','6666\n',1]) # 文件内容只能是字符串,只能写字符串
f.close()
文件处理追加操作
f=open('陈粒1','a',encoding='utf-8')
f.write('写到文件最后')
文件处理其他模式
# f=open('xxx','r+',encoding='gbk')
# # data=f.read()
# # print(data)
# # f.write('123sb')
#
#
#
# f.write('sb') #文件修改
# src_f=open('xxx','r',encoding='gbk')
# data=src_f.readlines()
# src_f.close()
#
# # for i in data:
# # print(i)
# print(data)
# dst_f=open('xxx','w',encoding='gbk')
# # dst_f.writelines(data)
# dst_f.write(data[0])
# dst_f.close() # with open('a.txt','w') as f:
# f.write('1111\n') # src_f=open('xxx','r',encoding='gbk')
# dst_f=open('xxx','w',encoding='gbk')
# with open('xxx','r',encoding='gbk') as src_f,\
# open('xxx_new','w',encoding='gbk') as dst_f:
# data=src_f.read()
# dst_f.write(data) f=open('a.txt')
print(f.encoding) #查看文件编码