我滴Python第二周笔记~

新的一周又开始了,又要写笔记惹

##前方高能
我滴Python第二周笔记~

函数 功能简要说明
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]
上一篇:linux nc 命令详解


下一篇:[极客大挑战 2019]BabySQL