Day04
作者:互联网
上次作业
1 #1. 使用while和for循环分别打印字符串s=’fkld’中每个元素。 2 方法一: 3 s = 'fkld' 4 for i in s: 5 print(i) 6 7 方法二: 8 index = 0 9 while 1: 10 print(s[index]) 11 index += 1 12 if index == len(s):break 13 14 #2. 加法计算器 # 如用户输入:5+9或5 + 9,然后进行分割再进行计算。 15 方法一:转化为列表 16 content = input('>>>').strip() 17 con1 = content.split('+') 18 num = 0 19 for i in con1: 20 num += int(i) 21 print(num) 22 23 方法二:寻找到加号后再进行计算 24 content = input('>>>').strip() 25 index = content.find("+") 26 a = int(content[0:index]) 27 b = int(content[index+1:]) 28 print(a + b) 29 30 #3. 任意输入一串文字+数字 统计出来数字的个数 31 s = input("请输入:") 32 count = 0 33 for i in s: 34 if i.isdigit(): 35 count += 1 36 print(count)
1. 列表的增删改查及嵌套
1. 增
1-1 增加 append 只是一种方法,没有返回值
1 li = ['alex','wusir','egon','女神','taibai'] 2 li.append(1) 3 print(li) #['alex','wusir','egon','女神','taibai','1'] 4 5 # 设计可以一直插入的系统 6 while 1: 7 username = input('>>>') 8 if username.strip().upper() == 'Q': 9 break 10 else: 11 li.append(username) 12 print(li)
1-2 插入 insert 插入元素到两个索引之间
1 li = ['alex','wusir','egon','女神','taibai'] 2 li.insert(4,'春哥') 3 print(li) #['alex','wusir','egon','女神','春哥','taibai']
1-3 迭代 extend 添加最小元素到末尾
1 li = ['alex','wusir','egon','女神','taibai'] 2 li.extend('二哥') 3 li.extend([1,2,3]) 4 print(li) #['alex','wusir','egon','女神','taibai','二','哥',1,2,3]
2 删
2-1 pop 按索引返回值,默认删除最后一个
1 li = ['taibai','alex','wusir','egon','女神'] 2 name = li.pop(1) # 返回值 3 print(name,li) #'alex' ['taibai','wusir','egon','女神']
2-2 remove 按元素去删
1 li = ['taibai','alex','wusir','egon','女神'] 2 li.remove('taibai') # 按元素去删除 3 print(li) #['alex','wusir','egon','女神']
2-3 clear 清空
1 li.clear() # 清空 2 print(li) #[]
2-4 del 默认全删,也可切片删
1 li = ['taibai','alex','wusir','egon','女神'] 2 del li 3 print(li) #报错,不存在 4 del li[0:2] # 切片去删除,有索引的地方顾头不顾尾 5 print(li) #['wusir','egon','女神']
3 改
3-1 按索引去改,即原位置的东西变为新的,可以是字符串、列表等等
1 li = ['taibai','alex','wusir','egon','女神'] 2 li[0] = '男神' 3 print(li) #['男神','alex','wusir','egon','女神'] 4 li[0] = [1,2,3]
3-2 切片改,原区间内的东西删除,新的东西按迭代方法最小元素去加
1 li = ['taibai','alex','wusir','egon','女神'] 2 li[0:3] = '云姐' 3 print(li) #['云','姐','egon','女神'] 4 li[0:3] = [1,2,3,'春哥'] 5 print(li) #[1,2,3,'春哥','egon','女神']
4 查
1 li = ['taibai','alex','wusir','egon','女神'] 2 for i in li: 3 print(i) #逐个打印 4 print(li[0:2]) #['taibai','alex']
ps 公共方法
ps-1 len 长度
ps-2 count 出现次数
ps-3 index 索引
1 li = ['taibai','alex','wusir','egon','女神'] 2 l = len(li) 3 print(l) #5 4 num = li.count('taibai') 5 print(num) #1 6 print(li.index('wusir')) #2
5 排序
5-1 sort 正向排序
1 li = [1,5,4,7,6,2,3] 2 li.sort() 3 print(li) #[1,2,3,4,5,6,7]
ps: 数字从小到大,字符串通过首个的ASCII码进行排序,并且数字和字符串不能同时排序,会报错
5-2 reverse = True 反向排序
1 li = [1,5,4,7,6,2,3] 2 li.sort(reverse=True) 3 print(li) #[7,6,5,4,3,2,1]
5-3 reverse 反转
1 li = [1,5,4,7,6,2,3] 2 li.reverse() 3 print(li) #[3,2,6,7,4,5,1]
6 嵌套
列表里可以套列表
1 li = ['taibai','a','bb',['alex','egon',89],23] 2 print(li[3][1]) #egon 3 4 name = li[0].capitalize() 5 print(name) #Taibai 6 7 #将索引为二的东西改为'嗷嗷' 8 li[2] = '嗷嗷' 9 print(li[2].replace('b','嗷')) #嗷嗷 10 11 li[3][0] = li[3][0].upper() 12 print(li) #['taibai','a','嗷嗷',['ALEX','egon',89],23]
补充1:range 顾头不顾尾,相当于数字按顺序排列的列表
可以添加步长,也可以反着来
1 for i in range(10,-1,-2): 2 print(i) #10 8 6 4 2 0
若直接 range(num),则打印0 1 2一直到 num - 1.
1 #要求将列表内的每个元素依次打印,其中嵌套列表按其中元素依次打印 2 方法一: 3 li = [3,'alex',[4,'taibai']] 4 for i in li: 5 if type(i) == list: 6 for k in i: 7 print(k) 8 else:print(i) 9 10 方法二: 11 for i in range(len(li)): 12 if type(li[i]) == list: 13 for j in li[i]: 14 print(j) 15 else:print(li[i])
补充2
字符串---->列表 split()
列表---->字符串 join() 将每个最小元素连接到一起
1 s = 'alex' 2 s1 = '+'.join(s) 3 print(s1) #a+l+e+x 4 li = ['t','e','s','t'] 5 li1 = ''.join(li) 6 print(li1) #test
2 元祖
1. 也叫只读列表,可循环,可切片
ps: 增删改中只能改
2. 儿子不能改,孙子可能可以改
属于元祖的不能改,但若是属于元祖中的列表的,则可以改
()围起来,类似于列表
ps: 虽然不能改,但可以用重新赋值的方法
1 student = ('轩轩','野狗') 2 print(student) 3 student = ('臭屁','狗') 4 print(student)
标签:alex,li,taibai,wusir,print,egon,Day04 来源: https://www.cnblogs.com/chen43/p/12234423.html