新的一周又开始了,又要写笔记惹
##前方高能
函数 | 功能简要说明 |
---|---|
divmod(x,y) | 返回包含整商和余数的元组((x-x%y)/y,x%y) |
len(obj) | 返回对象obj包含的元素个数,适用于列表、元组、集合、字典、字符串以及range对象,不适用于具有惰性求值特点的生成器对象和map、zip等迭代器对象 |
map(func,*iterables) | 返回包含若干函数值的map对象,函数func的参数分别来自于iterables指定的一个或多个可迭代的对象 |
max() min() | 返回最大值、最小值,允许指定排序规则 |
####一、回顾
- 上节课老师让我们输入一个三位数,取出每一位上的数字(
你猜怎么着,我掏出了C语言的那一套/100、%10、/10%10)其实是以这种方式侧面烘托了python的强大233333
1.以下是第一种写法,使用到divmod,举个栗子,假如x,y=divmod(a,b),则x=a//b,y=a%b
x = input(“请输入一个三位数:”)
x = int(x)
a,b=divmod(x,100)
b,c=divmod(b,10)
print(a,b,c)
2.其实还可以再简单一些,这里把x看作字符串按位取出:
a,b,c=map(int,x)
print(a,b,c)
3.可是问题来了,以上方法复用性低,不限位数怎么办呢:
x = input()
print(*map(int,x))#实参前的*用于序列解包
####二、内置函数
#####2.1.max()、len()
a = [72,26,80,65,34,86,19,74,52,40]
print(max(a),min(a),sum(a))
输入:86 19 548
2.计算该列表中的所有元素的平均值:
a = [72,26,80,65,34,86,19,74,52,40]
print(sum(a)/len(a))
输出:54.8
3.内置函数max()和min()的key参数可以用来指定比较规则
x = ['21','1234','9']
print(max(x))
输出:9
也许你会疑惑为啥不是1234???是因为这是字符串啦,比较的是unicode码
4. 输出最长的字符串:
x = ['21','1234','9']
print(max(x,key=len))
输出:1234
5.输出最大的数字:
x = ['21','1234','9']
print(max(x,key=int))
输出:1234
6.输出从第一位开始比较最大的字符串:
x = ['21','1234','9']
print(max(x,key=str))
输出:9
#####2.1.range()语法格式为range(start, end , step),返回具有惰性求值特点的range对象,其中包含左闭右开区间[start,end)内以step为步长的整数。参数start默认为0,step默认为1。
print(range(5))
输出:range(0,5)
print(list(range(5)))
输出:[0, 1, 2, 3, 4]
print(list(range(1, 10, 2)))
输出:[1, 3, 5, 7, 9]
print(list(range(9, 0, -2)))
输出:[9, 7, 5, 3, 1]
####四、列表的增删改查
- 增1 append
namelist = ["the shy","uzi","香锅",666]
print("------增加前-----")
for name in namelist:
print(name)
nametemp = input("请输入新增姓名:")
namelist.append(nametemp) #在末尾追加一个元素
print("----增加后------")
for name in namelist:
print(name)
输出:
------增加前-----
the shy
uzi
香锅
666
请输入新增姓名:甜甜
----增加后------
the shy
uzi
香锅
666
甜甜
- 增2
namelist = ["dwu","misd","sdjicj"]
for name in namelist:
print(namelist)
nametemp = input("请输入")
namelist.extend(nametemp)
for name in namelist:
print(name)
输出:
[‘dwu’, ‘misd’, ‘sdjicj’]
[‘dwu’, ‘misd’, ‘sdjicj’]
[‘dwu’, ‘misd’, ‘sdjicj’]
- 改1:删除del
a = [1,2,3,4,5,6,7]
del a[3]
a.pop() #结果:弹出末尾最后一个元素[1, 2, 3, 4, 5, 6]
print(a) #结果:[1, 2, 3, 5, 6, 7]
- 改2:remove
a = [1,2,3,4,5,6,7,8]
a.remove(3)#删除指定元素如’3‘
print(a)
- 改3
a = [1,2,3,4,5,6]
a[1] = "the shy"
print(a) result:[1, 'the shy', 3, 4, 5, 6]