day04
for循环:
#
s = 'dklwfa'
# print(s[100])
'''利用while循环 依次打印字符串的每个字符
len()
d s[0]
k s[1]
l
。。。
a s[count]
'''
# print(s[0])
# # print(s[1])
# # print(s[5])
# s = 'dkfdsafdasfdasfdaslsfa'
# # 最后一个元素的索引值与总长度有关
# index = 0
# while index < len(s):
# print(s[index])
# index += 1
s = 'dkfdsafdasfdasfdaslsfa'
# for 循环:有限循环
'''
for 变量 in iterable:
pass
'''
# for i in s:
# print(i)
# if i == 's':
# break
# break
# continue
# for else: 用法与while else相同
list应用:(加删查改 排序)
l1 = ['太白', 100, 'alex', '日天', '武大', '吴老师', '景女神']
# 列表的索引
# ret = l1[0]
# ret1 = l1[1]
# print(ret1,type(ret1))
# print(l1[-1])
# print(l1[-2])
# 切片 顾头不顾腚
# print(l1[:4])
# print(l1[:5:2])
# 倒叙取值
# print(l1[-1:-4:-1])
# 列表的常用操作
# l1 = ['alex', '太白', '吴老师', '景女神', '武大']
# 增:
# append 追加
# l1.append('alex')
# l1.append(100)
# l1.append([1, 2, 3])
# print(l1)
# insert 插入
# l1.insert(1,'小潘')
# extend 迭代着追加
# l1.extend('alex')
# l1.extend(['肖锋', 666])
# print(l1)
# 删
# pop 按照索引删除,会将删除的元素作为返回值返回
# ret = l1.pop(0)
# print(ret)
# remove 按照元素删除
# ret = l1.remove('武大')
# print(ret)
# clear 清空列表
# l1.clear()
# del
'''
1,按照索引删除
2,按照切片(可以加步长)删除
3,删除整个列表
'''
# del l1[-2]
# del l1[1:]
# del l1[::2]
# del l1
# 改
# 改某个元素
# print(l1[0])
# l1[0] = '男神'
# 切片改
# l1[:3] = 'abc'
# l1[:3] = 'abcdefghigk'
# 切片(步长) 改 必须一一对应
# l1[1:4:2] = 'a' #错误
# # l1[1:4:2] = 'a2'
# # l1[1:4:2] = [1,2,3] # 错误
# print(l1)
# 查
# 按照索引,按照切片(步长查询)
# for 循环
# for i in l1:
# print(i)
# print(l1)
# 其他方法:
# l1 = ['武大', '太白', '吴老师', '武大', '武大']
# len
# print(len(l1)) # 获取列表的长度(总个数)
# count 计算某个元素出现的次数
# print(l1.count('武大'))
# index 通过元素找索引,找到第一个就返回,找不到就报错
# print(l1.index('太白'))
# print(l1.index('武大'))
# print(l1.index('武大1'))
# l1 = [4, 5, 3, 9, 8, 7, 6, 1]
# sort 从小到大排序
# l1.sort()
# l1.sort(reverse=True) # 从大到小
# l1.reverse() # 反转
# print(l1)
# list
元组:
# tuple
tu1 = (1, 'alex', [1,2,3], True)
# 可索引,切片
# print(tu1[1])
# print(tu1[:3])
# 元组只能查不能改
# 索引,切片(步长) 查询
# for i in tu1:
# print(i)
#
# print(len(tu1))
# print(tu1.count('alex'))
# print(tu1.index('alex'))
# 可以删除元组
# del tu1
# print(tu1)
# 元组当真不能改么???
# tu1 = (1, 'alex', [1,2,3], True, (1,2,3))
# 儿子不能改,孙子可能改。
# tu1[2].append('太白')
# tu1.append(666)
# print(tu1)
range()
range(1,10) # 顾头不顾腚
# print(range(1,10))
# for i in range(1,10):
# print(i)
# 1 ~ 100
# for i in range(1,101):
# print(i)
# for i in range(2, 101, 2):
# print(i)
# 10 ~ 1
# for i in range(10, 0, -1):
# print(i)
# for i in range(10):
# print(i)
# 应用:
# range多与for循环配合。
l1 = ['无sir', 'alex', '太白', 100, 1, 2, 3]
for i in range(len(l1)):
print(i)
作业;
# 1.写代码,有如下列表,按照要求实现每⼀个功能
# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
# a. 计算列表的⻓度并输出
# b. 列表中追加元素"seven",并输出添加后的列表
# c. 请在列表的第1个位置插⼊元素"Tony",并输出添加后的列表
# d. 请修改列表第2个位置的元素为"Kelly",并输出修改后的列表
# e. 请将列表l2=[1,"a",3,4,"heart"]的每⼀个元素添加到列表li中,⼀⾏代码实现,不
# 允许循环添加。
# f. 请将字符串s = "qwert"的每⼀个元素添加到列表li中,⼀⾏代码实现,不允许循
# 环添加。
# g. 请删除列表中的元素"ritian",并输出添加后的列表
# h. 请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表
# i. 请删除列表中的第2⾄4个元素,并输出删除元素后的列表
# j. 请将列表所有得元素反转,并输出反转后的列表
# k. 请计算出"alex"元素在列表li中出现的次数,并输出该次数。
# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
# # print(len(li))
# li.append("seven")
# print(li)
# li.insert(0,'Tony') #注意位置 和insert
# print(li)
# li[1]="Kelly"
# # print(li)
# l2=[1,"a",3,4,"heart"]
# li.extend(l2[::]) #特别注意
# print(li)
# s = "qwert"
# li.extend(s) #特别注意 同上的区别
# print(li)
# del li[2]
# print(li) #del 的用法
# del li[1]
# print(li)
# del li[1:4]
# print(li)
# li.sort(reverse=True)
# print(li)
# print(li.count('alex')) 注意查询有返回值
# 2.写代码,有如下列表,利⽤切⽚实现每⼀个功能
# li = [1, 3, 2, "a", 4, "b", 5,"c"]
# a. 通过对li列表的切⽚形成新的列表l1,l1 = [1,3,2]
# b. 通过对li列表的切⽚形成新的列表l2,l2 = ["a",4,"b"]
# c. 通过对li列表的切⽚形成新的列表l3,l3 = ["1,2,4,5]
# d. 通过对li列表的切⽚形成新的列表l4,l4 = [3,"a","b"]
# e. 通过对li列表的切⽚形成新的列表l5,l5 = ["c"]
# f. 通过对li列表的切⽚形成新的列表l6,l6 = ["b","a",3]
# li = [1, 3, 2, "a", 4, "b", 5,"c"]
# l1=li[0:3]
# l2=li[3:6]
# l3=li[::2]
# l4=li[1:6:2]
# l5=li[-1:-2:-1]
# l6=li[-3::-2]
# print(l1)
# print(l2)
# print(l3)
# print(l4)
# print(l5)
# print(l6)
#
# 3.写代码,有如下列表,按照要求实现每⼀个功能。
# lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# a. 将列表lis中的"tt"变成⼤写(⽤两种⽅式)。
# b. 将列表中的数字3变成字符串"100"(⽤两种⽅式)。
# c. 将列表中的字符串"1"变成数字101(⽤两种⽅式)。
'''
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
s=lis[3][2][1][0].upper()
lis[3][2][1][0] = s
print(lis)'''
'''
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[3][2][1][0] = "TT"
print(lis)'''
# lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# lis[1]=100
# lis[3][2][1][1]=100
# print(lis)
# lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# lis[3][2][1][1]=lis[3][2][1][1]+97
# print(lis)
# lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# # lis[3][2][1][2] = 101
# # print(lis)
# lis[3][2][1][2] = int(lis[3][2][1][2])+100
# print(lis)
# 4.请⽤代码实现:
# li = ["alex", "wusir", "taibai"]
# 利⽤下划线将列表的每⼀个元素拼接成字符串"alex_wusir_taibai"
# li = ["alex", "wusir", "taibai"]
# print('_'.join(li))
#
# 5.利⽤for循环和range打印出下⾯列表的索引。
# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
# li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
# for i in range(len(li)):
# print(i)
# 6.利⽤for循环和range找出100以内所有的偶数并将这些偶数插⼊到⼀个新列表中。
# li=[]
# for i in range(1,101):
# if i%2 == 0:
# li.append(i)
# print(li)
# 7.利⽤for循环和range 找出50以内能被3整除的数,并将这些数插⼊到⼀个新列表中。
# li = []
# for i in range(1,51):
# if i%3==0:
# li.append(i) #注意append 和 extend 的区别 append是追加 extend 是迭代加例子'asas'为'a''s''a''s' 列表加完为字符串
# print(li)
# 8.利⽤for循环和range从100~1,倒序
# l1=[]
# for i in range(1,101):
# l1.append(i)
# l1.sort(reverse=True)
# print(l1)
# 9.利⽤for循环和range从100~10,倒序将所有的偶数添加到⼀个新列表中,然后对列
# 表的元素进⾏筛选,将能被4整除的数留下来。
# li = []
# l2 = []
# a = 0
# for i in range(100,9,-1):
# print(li)
# while a<len(li):
# e = li[a]
# if e%4 == 0:
# l2.append(li[a])
# a +=1
# print(l2)
# 10.利⽤for循环和range,将1-30的数字⼀次添加到⼀个列表中,并循环这个列表,将
# 能被3整除的数改成*。
# l1=[]
# for i in range(1,31):
# l1.append(i)
# print(l1)
# for i in l1:
# print(i)
# if i%3==0:
# l1[l1.index(i)]='*'
# print(l1)
# 11.查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾
# 的所有元素,并添加到⼀个新列表中,最后循环打印这个新列表。
# li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
# li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
# l1=[]
# for i in li:
# i=i.strip()
# if (i.startswith('A') or i.startswith('a')) and i.endswith('c'):
# l1.append(i)
# print(l1)
# for a in l1:
# print(l1)
# 12.开发敏感词语过滤程序,提示⽤户输⼊评论内容,如果⽤户输⼊的内容中包含特殊的
# 字符:
# 敏感词列表 li = ["苍⽼师", "东京热", "武藤兰", "波多野结⾐"]
# 则将⽤户输⼊的内容中的敏感词汇替换成等⻓度的*(苍⽼师就替换***),并添加到⼀
# 个列表中;如果⽤户输⼊的内容没有敏感词汇,则直接添加到上述的列表中。
# li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]
# l1 = []
# s = input("请输入评论内容")
# for i in li:
# if i in s: #注意in的用法
# l = len(i)
# s = s.replace(i,"*"*l)
# l1.append(s)
# print(l1)
# 13.有如下列表
# li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
# 循环打印列表中的每个元素,遇到列表则再循环打印出它⾥⾯的元素。
# 我想要的结果是:
# 1
# 3
# 4
# "alex"
# 3
# 7,
# 8
# "taibai"
# 5
# ritian
# li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
# for i in li:
# if type(i)==list:
# for a in i:
# print(a)
# else:
# print(i)