Day 4 python
一. 作业:
1. 如用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
content = input('请输入内容:').split('+') num=0 for i in content: num += int(i) print(num)
2. 任意输入一串文字+数字 统计出来数字的个数。
count = 0 for i in s: if i.isdigit(): count += 1 print(count)
二. 列表:[ ]
1. 列表的创建:
# 创建一个列表有三种方式: # 方式一:(常用) l1 = [1, 2, '彬哥'] # 方式二:(不常用) l1 = list() # 空列表 # l1 = list(iterable) # 可迭代对象 l1 = list('123') print(l1) # ['1', '2', '3'] # 方式三:列表推导式 l1 = [i for i in range(1,5)] print(l1) # [1, 2, 3, 4]
2. 列表的索引切片:
l1 = ['a', 'b', '太白', 3, 666] print(l1[0]) # 'a' print(l1[-1]) # 666 print(l1[1:3]) # ['b', '太白'] print(l1[:-1]) # ['a', 'b', '太白', 3] print(l1[::2]) # ['a', '太白', 666] print(l1[::-1]) # [666, 3, '太白', 'b', 'a']
3. 增:
# append 追加,给列表的最后面追加一个元素 l = [1, 2, 'a'] l.append(666) print(l) # [1, 2, 'a', 666] # insert 插入在列表的任意位置插入元素 l = [1, 2, 'a'] l.insert(1,'太白') print(l) # [1, '太白', 2, 'a'] # extend 迭代着追加,在列表的最后面迭代着追加一组数据 l = [1, 2, 'a'] l.extend('太白a') print(l)#[1, 2, 'a', '太', '白', 'a']
4. 删:
# pop 通过索引删除列表中对应的元素,该方法有返回值,返回值为删除的元素 l = ['太白', 'alex', 'WuSir', '女神'] ret = l.pop(1) print(ret,l) # alex ['太白', 'WuSir', '女神'] # remove 通过元素删除列表中该元素 l = ['太白', 'alex', 'WuSir', '女神'] l.remove('alex') print(l) # ['太白', 'WuSir', '女神'] # clear 清空列表 l = ['太白', 'alex', 'WuSir', '女神'] l.clear() print(l) # [] # del #按照索引删除该元素 l = ['太白', 'alex', 'WuSir', '女神'] del l[2] print(l) # ['太白', 'alex', '女神'] # 切片删除该元素 l = ['太白', 'alex', 'WuSir', '女神'] del l[1:] print(l) # ['太白'] # 切片(步长)删除该元素 l = ['太白', 'alex', 'WuSir', '女神'] del l[::2] print(l) # ['alex', '女神']
5. 改:
# 按照索引改值 l = ['太白', 'alex', 'WuSir', '女神'] l[0] = '男神' print(l) # ['男神', 'alex', 'WuSir', '女神'] # 按照切片改值(迭代着增加) l = ['太白', 'alex', 'WuSir', '女神'] l[1:3] = 'abcdefg' print(l) # ['太白', 'a', 'b', 'c', 'd', 'e', 'f', 'g', '女神'] # 按照切片(步长)改值(必须一一对应) l = ['太白', 'alex', 'WuSir', '女神'] l[::2] = '对应' print(l) # ['对', 'alex', '应', '女神']
6. 查:
for i in li: print(i) print(li[0:2])
7. 排序:
li = [1,5,4,7,6,2,3] #正向排序 li.sort() print(li) #反向排序 li.sort(reverse=True) print(li) #反转 li.reverse() print(li)
8. 列表嵌套:
#列表的嵌套 li = ['taibai','武藤兰','苑昊',['alex','egon',89],23] #找出'藤' print(li[1][1]) #找出taibai,首字母大写。 name = li[0].capitalize() print(name) # 把'苑昊'的'昊'改为'日天' print(li[2].replace('昊','日天')) #或 li[2] = li[2].replace('昊','ritian') print(li[2]) #找到'alex',变成大写 li[3][0] = li[3][0].upper() print(li[3][0])
9. join:(list-->str)
#split(str-->list)
s = 'alex' s1 = '_'.join(s) print(s1) li = ['sssksk','ddkeoejd','我是','打击'] print(''.join(li)) print('+++'.join(li)) #a_l_e_x #ssskskddkeoejd我是打击 #sssksk+++ddkeoejd+++我是+++打击
10. range: 相当于list(0,1,2,3,4,5,6……)
三. 元组tuple:( )
只读列表:查询可以,循环也可以,切片也可以。但就是不能改。
1. 元组的索引切片:
tu1 = ('a', 'b', '太白', 3, 666) print(tu1[0]) # 'a' print(tu1[-1]) # 666 print(tu1[1:3]) # ('b', '太白') print(tu1[:-1]) # ('a', 'b', '太白', 3) print(tu1[::2]) # ('a', '太白', 666) print(tu1[::-1]) # (666, 3, '太白', 'b', 'a')
2. for 循环:
tu1 = ('a', 'b', '太白', 3, 666) for i in tu1: print(i)
3. 通过元素找索引index(可切片),找到第一个元素就返回,找不到该元素即报错。
tu = ('太白', [1, 2, 3, ], 'WuSir', '女神') print(tu.index('太白')) # 0
4. count: 获取某元素在列表中出现的次数:
tu = ('太白', '太白', 'WuSir', '吴超') print(tu.count('太白')) # 2
5. len
tu1 = (1,2,3,4,84,5,2,8,2,11,88,2) print(len(tu1))#12
浙公网安备 33010602011771号