python day 4
1、昨日内容回顾(自己背)
2、作业讲解
'''1.有变量name = "aleX leNb"完成如下操作;
1)移除name变量对应的值两边的空格,并输出处理结果
2)移除name变量左边的"al"并输出处理结果
3)移除name变量右面的"Nb",并输出处理结果
4)移除name变量开头的a与最后的"b”并输出处理结果
5)判断name变量是否以"al"开头,并输出结果。
6)判断name变量是否以"Nb"结尾,并输出结果。
7)将name变量对应的值中的所有的"l"替换为"p", 并输出结果。
8)将name变量对应的值中的第一个'i'替换成'p',并输出结果.
9)将name变量对应的值根据所有的"I"分割,并输出结果。。
10)将name变量对应的值根据第一个'l'分割,并输出结果。。
11)将name变量对应的值变大写,并输出结果。
12)将name变量对应的值变小写,并输出结果。
13)将name变量对应的值直字母a大写,并输出结果~
14)判断name变量对应的值字母'l'出现几次,并输出结果
15)如果判断name变量对应的值前四位'l'出现几次,并输出结果。
16)从name变量对应的值中找到'N'对应的索引(如果找不到则报错),并输出结果。
17)从name变量对应的值中找到'N'对应的索引(如果找不到则返回-1)输出结果。
18)从name变量对应的值中找到'X le'对应的索引,并输出结果。
19)请输出name变量对应的值的第2个字符? .
20)请输出name变量对应的值的前3个字符?。
21)请输出name 变量对应的值的后2个字符?。
22)请输出name变量对应的值中'e' 所在索引位置?。
获取子序列,去掉最后一个字符。如: oldboy则获取oldbo
2,有字符串s= '132a4b5c'.
1)通过对li列表的切片形成新的字符串s1,s1=‘123'。
2)通过对li列表的切片形成新的字符串s2,s2 = 'a4b',
3)通过对li列表的切片形成新的字符中s3,s3 =‘1245'
4)通过对li列表的切片形成字符串s4,s4= '3ab'。
5)通过对li列表的切片形成字符串s5,s5='C'
6)通过对li列表的切片形成字符串s6,s6 = "ba3'。
3,使用while和for循环分别打印字符串s='asdfer'中每个元素。。
4,实现一个整数加法计算器:
如: content = input('请输入内容:") #如用户输入: 5+9或5+9或5+9,然后进行分割再进行计算。。
5,计算用户输入的内容中有几个整数。,
如: content = input('请输入内容:”) # 如fhdal234slfh98769fjdla.'''
# 作业1: name = "aleX leNb" n1 = name.strip() print(n1) n2 = name.strip('al') print(n2) n3 = name.strip('Nb') print(n3) n4 = name.strip('a''b') print(n4) n5 = name.startswith('al') print(n5) n6 = name.endswith('Nb') print(n6) n7 = name.replace('l','p') print(n7) n8 = name.replace('i','p',1) print(n8) n9 = name.split('l') print(n9) n10 = name.split('l',1) print(n10) n11 = name.lower() print(n11) n12 = name.upper() print(n12) n13 = name.capitalize() print(n13) n14 = name.count('l') print(n14) n15 = name.count('l',0,3) print(n15) n16 = name.index('N') print(n16) n17 = name.find('N') print(n17) n18 = name.find('X le') print(n18) n19 = name[2] print(n19) n20 = name[0:3] print(n20) n21 = name[-2:] print(n21) n22 = name.find('e') print(n22) # 作业2: s = '132a4b5c' s1 = s[0]+s[2]+s[1] print(s1) s2 = s[3:6] print(s2) s3 = len(s) print(s3) s3_1 = s[0:8:2] print(s3_1) s4 = s[1:6:2] print(s4) s5 = s[-1].upper() print(s5) s6 = s[-7:-2:2] s7 = s6[::-1] print(s7) # 作业3: #使用while和for循环分别打印字符串s='asdfer'中每个元素。 s='asdfer' for i in s: print(i) q = 0 while 1 : print(s[q]) q += 1 if q == len(s):break # 作业4: #实现一个整数加法计算器.如: content = input('请输入内容:") 如用户输入: 5+9或5+9或5+9,然后进行分割再进行计算。 # 第一个是我写的,第二个是同学写的,第三个是老师写的。 content = input('请输入整数加法计算:').strip() i = content.split('+') i1 = int(i[0]) + int(i[1]) print(i1) content = input('>>>').strip() con1 = content.split('+') num = 0 for i in con1: num += int(i) print(num) content = input('>>>').strip() s1 = content.find('+') d1 = int(content[0:s1]) d2 = int(content[s1:]) print(d1 + d2) # 作业5: #计算用户输入的内容中有几个整数。 content = input('>>>') # 如fhdal234slfh98769fjdla. count = 0 for i in content: if i.isdigit(): count += 1 print(count)
3、列表
增删改查
# 列表的切片 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] l1 = li[3] print(l1) l2 = li[0:4] print(l2)''' # 列表的增删改查 # 列表增加 append:增加到最后,追加 '''li = ['brother',[1,2,3],'ring','mango','女神','liang'] li.append('日天') print(li)''' # 例题:累加字符串,当输入Q时结束本次输入 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] while 1 : username =input('>>>') if username.strip().upper() == 'Q': break else: li.append(username) print(li)''' # 列表增加 insert:插入到列表中间 '''li = ['brother',[1,2,3],'ring','mango','女','子','liang'] li.insert(5,'汉') print(li)''' # 列表增加 extend:增加到最后,显示增加的最小元素,对象必须是可迭代对象,int不可迭代,列表可迭代。 '''li = ['brother',[1,2,3],'ring','mango','女','子','liang'] li.extend('二哥') li.extend(123) li.extend([4,5,6]) print(li)''' # 删 pop:按索引去删除 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] li.pop(4) print(li) name = li.pop(1) #返回值 若()内为空默认删除最后一个 print(name,li)''' # 删 remove:按元素删 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] li.remove('ring') print(li)''' # 删 clear:清空 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] li.clear() print(li)''' # 删 del:清空,不可查找(查找时报错),也可切片删除 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] # del li # print(li) del li [3:] print(li)''' # 改 按索引直接改 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] li[4] = '女神' print(li)''' # 改 按切片改 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] li[0:2] = '擎天柱' # 按照迭代来改 print(li)''' # 查 for i in 迭代对象 '''li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] for i in li : print(i) print(li[0:2]) # 按切片去查'''
# 公共用法 # 测量长度:len li = ['brother',[1,2,3],'ring','mango','女汉子','liang'] l = len(li) print(l) # 测量出现的次数:count num = li.count('mango') # 'mango' 出现的次数 print(num) # 查找元素 index:若找到返回元素下标,若没有则报错 print(li.index('mango')) # 列表排序 sort:最快的排序方式 li = [1,5,4,7,6,2,3,] li.sort() # 正序排序 print(li) li.sort(reverse = True) # 倒序排序 print(li) # 列表的反转:reverse li = [1,5,4,7,6,2,3,] li.reverse() print(li)
列表的嵌套
# 列表的嵌套 li = ['brother','波多野结衣',['ring','mango',69],'女神',911] print(li[1][2]) # 找'野'字 print(li[0].capitalize()) # 找到第一个单词并大写 li[0] = 'sister' # 把brother 改为 sister print(li) li[-2] = '女汉子' # 把'女神'改为'女汉子' print(li) li[-2] = li[-2].replace('神','汉子') print(li) li[2][1] = li[2][1].upper() # 把'mango'改为大写 print(li)
4、元组
# 元组 只读列表,可循环查询,可切片。 # 儿子不能改,孙子可能可以改 li = (2,5,0,'波多野结衣',['ring','mango',4,5,],'女神',911) print(li[3]) # 可查 print(li[0:4]) # 可切片查 for i in li: print(i) # 可循环查 li[-3][1] = li[-3][1].upper() print(li) li[-3].append(6) print(li)
# 列表转化为字符串(list-->str):join '''s = 'mango' s = '*'.join(s) # 括号里放可迭代对象,列表,字符串,'_'表示引用_连接 print(s) li = ['波多野结衣','女神'] # 列表里不能再加列表 s = ''.join(li) # 无缝拼接 print(s)''' # 字符串转化为列表(list-->str):split # range [1,2,3,4,5,6,7...99....] 数字列表 '''# for i in range(0,10): # 顾头不顾尾 # for i in range(0,100): # 自动从0开始 # for i in range(0,10,2): # 步长 for i in range(10,-4,-1): # 倒着取,可取负数 # for i in range(0,10,-1): # 面试题 结果什么也没有,不运行 print(i)'''
5、作业
#课堂作业
li = [1,2,3,'波多野结衣',[4,5,6,'黄瓜'],'banana'] #将列表中的所有元素进行排序,包括[4,5,6,'黄瓜']
li = [1,2,3,'波多野结衣',[4,5,6,'黄瓜'],'banana']
for i in li:
if type(i) == list:
for k in i:
print(k)
else:print(i)
for i in range(len(li)):
if type(li[i]) == list:
for j in li[i]:
print(j)
else: print(li[i])
# 课后作业 ''' 1,写代码,有如下列表,按照要求实现每一个功能 li = 'alex",wusir'eric,'rain','alex']. 1)计算列表的长度并输出。 2)列表中追加元素'seven',并输出添加后的列表 3)请在列表的第1个位置插入元素"Tony,井输出添加后的列表。 4)请修改列表第2个位置的元素为"Kelly,并输出修改后的列表。 5)请将列表l2=[1,'a'3,4,'heart']的每一个元素添加到列表li中,一行代码实现,不允许循环添加。 6)请将字符串s= 'qwert’的每一个元素添加到列表li中,一行代码实现,不允许循环添加。。 7)请删除列表中的元素'eric,并输出添加后的列表。 8)请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表 9)请删除列表中的第2至4个元素,井输出删除元素后的列表。 10)请将列表所有得元素反转,并输出反转后的列表 11)请计算出'alex'元素在列表li中出现的次数并输出该次数。 2.写代码,有如下列表,利用切片实现每一个功能。 li= [1,3,2,'a',4,'b',5,'C'] 1)通过对li列表的切片形成新的列表11,l1 = [1,3,2] 2)通过对li列表的切片形成新的列表12,12 = ['a'4,'b'] 3)通过对li列表的切片形成新的列表13,13= [1,2,4,5] 4)通过对li列表的切片形成新的列表14,14= [3,'a','b'] 5)通过对li列表的切片形成新的列表15,15= ['c'] 6)通过对Ii列表的切片形成新的列表16,16= ['b','a',3] 3,写代码,有如下列表,按照要求实现每一个功能。 lis= [2,3,'k',['qwe',20,['k1',['tt','3','1']],89],'ab','adv'] 1)将列表lis中的'tt'变成大写(用两种方式)。 2)将列表中的数字3变成字符串'100'(用两种方式)。 3)将列表中的字符串'1'变成数字101 (用两种方式)。 4,请用代码实现: li = ['alex','eric','rain'] 利用下划线将列表的每-一个元素拼接成字符串"alex_ eric_rain" '''''' 1,写代码,有如下列表,按照要求实现每一个功能 li = 'alex",wusir'eric,'rain','alex']. 1)计算列表的长度并输出。 2)列表中追加元素'seven',并输出添加后的列表 3)请在列表的第1个位置插入元素"Tony,井输出添加后的列表。 4)请修改列表第2个位置的元素为"Kelly,并输出修改后的列表。 5)请将列表l2=[1,'a'3,4,'heart']的每一个元素添加到列表li中,一行代码实现,不允许循环添加。 6)请将字符串s= 'qwert’的每一个元素添加到列表li中,一行代码实现,不允许循环添加。。 7)请删除列表中的元素'eric,并输出添加后的列表。 8)请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表 9)请删除列表中的第2至4个元素,井输出删除元素后的列表。 10)请将列表所有得元素反转,并输出反转后的列表 11)请计算出'alex'元素在列表li中出现的次数并输出该次数。 2.写代码,有如下列表,利用切片实现每一个功能。 li= [1,3,2,'a',4,'b',5,'C'] 1)通过对li列表的切片形成新的列表11,l1 = [1,3,2] 2)通过对li列表的切片形成新的列表12,12 = ['a'4,'b'] 3)通过对li列表的切片形成新的列表13,13= [1,2,4,5] 4)通过对li列表的切片形成新的列表14,14= [3,'a','b'] 5)通过对li列表的切片形成新的列表15,15= ['c'] 6)通过对Ii列表的切片形成新的列表16,16= ['b','a',3] 3,写代码,有如下列表,按照要求实现每一个功能。 lis= [2,3,'k',['qwe',20,['k1',['tt','3','1']],89],'ab','adv'] 1)将列表lis中的'tt'变成大写(用两种方式)。 2)将列表中的数字3变成字符串'100'(用两种方式)。 3)将列表中的字符串'1'变成数字101 (用两种方式)。 4,请用代码实现: li = ['alex','eric','rain'] 利用下划线将列表的每-一个元素拼接成字符串"alex_ eric_rain" '''