一、内置函数/内嵌函数:系统预先定义的函数;

1、常用数学运算函数:绝对值abs、近似值round、幂运算pow、求商和余数divmod、最大值max、最小值min、和sum、动态运算eval;

2、类型转换函数:转为整型int、浮点型float、字符串str、字符转为对应的ascii数字ord、数字转对应的ascii字符chr、转化为布尔类型bool、十进制转为二进制bin、转为十六进制hex、转为八进制oct、转为列表list、转为元组tuple、转为字典dict、转为字节数组bytes;

3、序列操作:

①all(),用于判断括号内对象是否都为True,除了0、空、False外都算True,类比and;

②any(),用于判断括号内对象是否有True,除了0、空、False外都算True,类比or;

③排序:sort只应用于list对象,直接操作已存在的列表,sorted可应用所有可迭代对象,返回一个新列表;

sorted(range(10)) #升序
sorted(range(10),reverse=True) #降序
sorted(['A','b','c','D','e']) #字符串排序
sorted(['A','b','c','D','e'],key=str.lower) #字符串无关大小写排序
[0,1, 2, 3, 4, 5, 6, 7, 8, 9]
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
['A', 'D', 'b', 'c', 'e']
['A', 'b', 'c', 'D', 'e']

④reverse(),反向列表中的元素;

⑤range(),创建一个整数列表,一般用在for循环中;

⑥zip(),将对象中对应的元素对应打包成元组、返回这些元组组成的列表,如果前后两个对象元素个数不一致、则返回列表长度与最短的对象相同;

a = zip([1,2,3],['A','b','c','D','e'])
list(a)
[(1, 'A'), (2, 'b'), (3, 'c')]

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

a = 'LMY'list(enumerate(a,2)) #2表示下标开始数字
[(2, 'L'), (3, 'M'), (4, 'Y')]

二、set集合

1、一种数据类型,无序且不重复的元素集合,不支持索引和切片;

2、常用操作:新增add、清空clear、取差集difference【-】、取交集intersection【&】、取并集union【|】、从集合中取出且删除数据pop、移除指定元素discard、批量添加update

set1 = {1,2,3}
set2= {2,3,4}print(set1.difference(set2)) #差集 -
{1}print(set1.intersection(set2)) #交集 &
{2, 3}print(set1.union(set2)) #并集 |
{1, 2, 3, 4}
set1.discard(3) #指定移除
print(set1)
{1, 2}
set1.update(set2)#批量新增
print(set1)
{1, 2, 3, 4}

三、练习

#求三组连续自然数的和:求出1到10、20到30、35到45的和
print(sum(list(range(1,11))))print(sum(list(range(20,31))))print(sum(list(range(35,46))))55
275
440
#100个和尚吃100个馒头,大和尚一人3个,小和尚三人1个,请问大小各多少人
ilist =[]for a in range(1,101):if a*3+(100-a)/3==100:
ilist.append(a)for i inilist:print('大和尚%d人,小和尚%d人'%(i,100-i))

大和尚25人,小和尚75人#指定一个列表,列表里含有唯一一个只出现过一次的数字,写程序找楚这个独一无二的数字

la = list([1,1,1,2,2,3,4,4])
l=[]for i inla:if la.count(i)==1:
l.append(i)print(list(set(l)))
[3]