学习python第六天 --作业

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]

1)计算列列表的⻓长度并输出

ret=len(li)

print(ret)

2)列列表中追加元素"seven",并输出添加后的列列表

li.appen(seven)

print(li)

3)请在列列表的第1个位置插⼊入元素"Tony",并输出添加后的列列表

li.inset(0,"Tony")

print(li)

4)请修改列列表第2个位置的元素为"Kelly",并输出修改后的列列表

li.inset(1,"Kelly")

print("li")

5)请将列列表l2=[1,"a",3,4,"heart"]的每⼀一个元素添加到列列表li中,⼀行代码实 现,不不允许循环添加。

li.extend([1,"a",3,4,"heart"])

print(li)

6)请将字符串串s = "qwert"的每⼀一个元素添加到列列表li中,⼀一⾏行行代码实现,不不 允许循环添加。

li.extend("qwert")

print(li)

7.请删除列列表中的元素"alex",并输出添加后的列表

li.remove("alex")

print(li)

8)请删除列列表中的第2个元素,并输出删除的元素和删除元素后的列列表

del li[1]:

print (li)

9)请删除列列表中的第2至4个元素,并输出删除元素后的列列表

del li [1:5]

print(li)

10)请将列列表所有得元素反转,并输出反转后的列列表

li.reverse()

print(li)

11)请计算出"alex"元素在列列表li中出现的次数,并输出该次数。

ret = li.count("alex")

pint(ret)

 

2,写代码,有如下列列表,利利⽤用切⽚片实现每⼀一个功能

li = [1, 3, 2, "a", 4, "b", 5,"c"]

1)通过对li列列表的切片形成新的列列表l1,l1 = [1,3,2]

l1= li[:3]

print (l1)

2)通过对li列列表的切⽚片形成新的列列表l2,l2 = ["a",4,"b"]

l2 = li[3:6]

print (l2)

3)通过对li列列表的切⽚片形成新的列列表l3,l3 = ["1,2,4,5]

l3 = li[::2]

print(l3)

4)通过对li列列表的切⽚片形成新的列列表l4,l4 = [3,"a","b"]

l4 = li[1:7:2]

print(l4)

5)通过对li列列表的切⽚片形成新的列列表l5,l5 = ["c"]

l5 = li[-1:]

print(l5)

6)通过对li列列表的切⽚片形成新的列列表l6,l6 = ["b","a",3]

l6 = li[-3::-2]

print(l6)

 

3,写代码,有如下列列表,按照要求实现每⼀一个功能。

lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]

1)将列列表lis中的"tt"变成⼤大写(⽤用两种⽅方式)。

lis[3][2][1][0] = lis[3][2][1][0].upper() upper变大写的方法

lis[3][2][1][0] = "TT"  修改

lis[3][2][1][0] = lis[3][2][1][0].replace("t", "T") replace修改

2)将列列表中的数字3变成字符串串"100"(⽤用两种⽅方式)。

lis[3][2][1][1] = "100"
lis[3][2][1][1] = str(lis[3][2][1][1] + 97) 把整数3加上97,,然后转换成100str
lis[3][2][1][1] = str(lis[3][2][1][1]).replace("3", "100")

3)将列列表中的字符串串"1"变成数字101(⽤用两种⽅方式)。

 lis[3][2][1][2] = int(lis[3][2][1][2]+"01")
 lis[3][2][1][2] = 101
lis[3][2][1][2] = int(lis[3][2][1][2].replace("1", "101"))
print(lis.index(["qwe", 20, ["k1", ["tt", 3, "1"]], 89]))

4,请⽤用代码实现:

li = ["alex", "eric", "rain"]

利用下划线将列列表的每⼀一个元素拼接成字符串串"alex_eric_rain"

li = ["alex", "eric", "rain"]
s = ""

for name in li:
     s += name+"_"
 print(s.strip("_"))

 

# print("_".join(li))

5.利利⽤用for循环和range打印出下⾯面列列表的索引。

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]

for c in range(len(li))

print(c)

 

6.利利⽤用for循环和range找出100以内所有的偶数并将这些偶数插⼊入到⼀一个新列列表 中。

lst = []

 

for c in range(1:101:2)

 lst.append(i)

 # 方案二
 for i in range(101):
   if i % 2 == 0:
      lst.append(i)

7.利用for循环和range 找出50以内能被3整除的数,并将这些数插⼊入到⼀一个新列列 表中。

 lst = []
 for i in range(50):
     if i % 3 == 0:
        lst.append(i)

8.利利⽤用for循环和range从100~1,倒序打印。

for i in range (100:0:-1)

print (i)

9.利利⽤用for循环和range从100~10,倒序将所有的偶数添加到⼀一个新列列表中,然 后对列列表的元素进⾏行行筛选,将能被4整除的数留留下来。

# lst =[]
# for i in range(100,9,-1):
# if i % 2 == 0:
# lst.append(i)
# for c in lst:
# if c % 4 == 0:
# print(c)

10,利利⽤用for循环和range,将1-30的数字⼀一次添加到⼀一个列列表中,并循环这个 列列表,将能被3整除的数改成*。
lst = []
for i in range(1,31):
lst.append(i)

for i in range(len(lst)):
if lst[i] % 3 ==0:
lst[i]="*"
print(lst)

11,查找列列表li中的元素,移除每个元素的空格,
并找出以"A"或者"a"开头,并 以"c"结尾的所有元素,并添加到⼀一个新列列表中,后循环打印这个新列列表。
li = ["TaiBai ", “ale  xC", “AbC   ", "egon", " ri  TiAn", "WuSir", "  aqc"]
li = ["TaiBai ", "ale xC", "AbC ", "egon", " ri TiAn", "WuSir", " aqc"]
lst = []

for el in li:
el = el.replace(" ", "")
if el.capitalize().startswith("A") and el.endswith("c"):
lst.append(el)
print(lst)

12,开发敏敏感词语过滤程序,提示⽤用户输⼊入评论内容,如果⽤用户输⼊入的内容中
包含特殊的字符: 敏敏感词列列表 li = ["苍⽼老老师", "东京热", "武藤兰", "波多野结⾐衣"]
则将⽤用户输⼊入的内容中的敏敏感词汇替换成等⻓长度的*(苍⽼老老师就替换***),
并添 加到⼀一个列列表中;如果⽤用户输⼊入的内容没有敏敏感词汇,则直接添加到上述的列列 表中
content = input("请输入评论内容")
li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]
lst =[]
for i in li:
if i in content:
content = content.replace(i,"*",*len(i))
lst.append(content)
print(lst)
13,有如下列列表 li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"] 循环打印列列表中的每个元素,遇到列列表则再循环打印出它⾥里里⾯面的元素。
# for el in li:
#     if type(el) == list: # 百度, 谷歌, stackoverflow
#         for el2 in el:
#             if type(el2) == str:
#                 print(el2.lower())
#             else:
#                 print(el2)
#     else:
#         if type(el) == str:
#             print(el.lower())
#         else:
#             print(el)
14. 把班级学⽣生数学考试成绩录⼊入到⼀一个列列表中: 并求平均值. 要求: 录⼊入的时候 要带着⼈人名录⼊入, 例例如: 张三_44

# lst = [] # 张三_44, 张三_44, 张三_44
# # 数据的录入
# while 1:
#     content = input("请输入学生信息(q)退出:")
#     if content.upper() == "Q":
#         break
#     lst.append(content)
#
# # 计算总分
# score = 0
# for el in lst: # 张三_44
#     score += int(el.split("_")[1])
#
# # 平均值
# print(score / len(lst))
15. 敲七游戏. 从0开始数数. 遇到7或者7的倍数要在桌上敲⼀一下. 编程来完成敲 七
lst = []
content = int(input("请输入数字:"))
for i in range(1,content+1):
if i % 7 ==0 or "7" in str(i):
print("咣")
else:
print(i)
16. (升级题) 编写程序. 完成⼼心动⼥女女⽣生的筛选. (升级题) 
            首先. 程序会提示⽤用户录⼊入10位⼼心仪⼥女女⽣生的姓名.
 然后把10位⼥女女⽣生的名 字和序号展示出来. 由⽤用户选择⼼心动⼥女女⽣生.
此时⽤用户可以选择3个⼼心动⼥女女⽣生. 把⽤用 户选中的三个⼼心动⼥女女⽣生的名字打印出来. 供⽤用户继续选择.
这⼀一次选择. 只能选 择⼀一名⼥女女⽣生. 然后输出⽤用户的⼼心动⼥女女⽣生是xxx    
运⾏行行效果: 

count=1
girls=[]
count1=0
girl3=[]
count2=0
while count<=10:
girl=input("请输入你心仪的女生(你还可以输入%s个):" % (11-count))
girls.append(girl)
count+=1
else:
print("你当前心仪的女生有:")
for i in range(len(girls)):
print("编号:%s,名字:%s"% (i+1,girls[i]))
# print("请输入你更喜欢的的三个女人的编号:")
while True:
while count1<3:
more_like=int(input("请输入你更喜欢的女生(你还可以输入%s个):" % (3-count1)))
girl3.append(girls[more_like-1])
count1+=1
else:
print("更喜欢的列表更新")
print(girl3)
last=int(input("输入你最喜欢的人的编号:"))
print("程序帮你选出来了,你最喜欢的是%s" % (girl3[last-1]))
break



 

posted @ 2018-10-23 17:48  DanielYang11  阅读(332)  评论(0编辑  收藏  举报