Python练习_数据类型_day4

题目

1.作业

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

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
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列表的切片形成新的列表l1,l1 = [1,3,2]
2)通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
3)通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5]
4)通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
5)通过对li列表的切片形成新的列表l5,l5 = ["c"]
6)通过对li列表的切片形成新的列表l6,l6 = ["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"

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

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

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

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

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

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

10,利用for循环和range,将1-30的数字一次添加到一个列表中,并循环这个列表,将能被3整除的数改成*11,查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。
li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]

12,开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:
敏感词列表 li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]
则将用户输入的内容中的敏感词汇替换成等长度的*(苍老师就替换***),并添加到一个列表中;如果用户输入的内容没有敏感词汇,则直接添加到上述的列表中。


13,有如下列表
li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
循环打印列表中的每个元素,遇到列表则再循环打印出它里面的元素。
我想要的结果是:
1
3
4
"alex"
3
7,
8
"taibai"
5
ritian

2.

2.默写

1,将列表的增删改查不同的方法全部写出来,
例如:增:有三种,append:在后面添加。Insert按照索引添加,
expend:迭代着添加。
2,默写第,13题的实现的代码。

 

 

 

答案

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

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
1)计算列表的长度并输出
2)列表中追加元素"seven",并输出添加后的列表
3)请在列表的第1个位置插入元素"Tony",并输出添加后的列表
4)请修改列表第2个位置的元素为"Kelly",并输出修改后的列表
5)请将列表l2=[1,"a",3,4,"heart"]的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
6)请将字符串s = "qwert"的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
7)请删除列表中的元素"barry",并输出添加后的列表
8)请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表
9)请删除列表中的第2至4个元素,并输出删除元素后的列表
10)请将列表所有得元素反转,并输出反转后的列表
11)请计算出"alex"元素在列表li中出现的次数,并输出该次数。

1. 
print(len(li))
2.
li.append('seven')
print(li)
3.
li.insert(0, 'Tony')
print(li)
4.
li[1] = 'Kelly'
print(li)
5.
li.extend(l2)
6.
li.extend(s)
7.
li.remove('barry')
print(li)
8.
print(li.pop(1))
print(li)
9.
del li[1:4]
print(li)
10.
li.reverse()
print(li)
11.
print(li.count('alex'))


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

li = [1, 3, 2, "a", 4, "b", 5,"c"]
1)通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
2)通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
3)通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5]
4)通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
5)通过对li列表的切片形成新的列表l5,l5 = ["c"]
6)通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]
1.
l1 = li[:3]
print(l1)
2.
l2 = li[3:6]
print(l2)
3.
l3 = li[::2]
print(l3)
4.
l4 = li[1:-2:2]
print(l4)
5.
l5 = li[-1]
print(l5)
6.
l6 = li[-3:0:-2]
print(l6)

 

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

lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
1)将列表lis中的"tt"变成大写(用两种方式)。
2)将列表中的数字3变成字符串"100"(用两种方式)。
3)将列表中的字符串"1"变成数字101(用两种方式)。
1.
第一种:
lis[-3][2][1][0] = 'TT'
第二种:
lis[-3][2][1][0] = lis[-3][2][1][0].upper()
2.
第一种:
lis[1] = '100'
lis[-3][-2][1][1] = '100'
第二种:
lis[lis.index(3)] = '100'
lis[-3][-2][1][1] = '100'
3.
第一种:
lis[-3][-2][1][-1] = 101
第二种:
lis[-3][-2][1][-1] = int(lis[-3][-2][1][-1]) + 100

 

4,请用代码实现:

li = ["alex", "eric", "rain"] 利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"

print('_'.join(li))

 

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

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
for i in range(len(li)):
    print(i)

 

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

li = []
for i in range(0, 101, 2):
    li.append(i)
print(li)


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

li = []
for i in range(0, 51):
    if i % 3 == 0:
        li.append(i)
print(li)

 

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

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

 

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

li = []
for i in range(100, 9, -2):
    li.append(i)
c = len(li)
for j in range(len(li)):
    if li[j] % 4 == 0:
        li.append(li[j])
del li[:c]
print(li)

 

10,利用for循环和range,将1-30的数字一次添加到一个列表中,并循环这个列表,将能被3整除的数改成*。

li = [i for i in range(1, 31)]
for i in range(len(li)):
    if li[i] % 3 == 0:
        li[i] = '*'
print(li)

 

11,查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。

li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]
l1 = []
for i in range(len(li)):
    if (li[i].strip().startswith('a') or li[i].strip().startswith('A')) and li[i].strip().endswith('c'):
        l1.append(li[i].strip())
print(l1)

 

12,开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:

li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]

l1 = []
s = input('请输入内容:')
for i in li:
    if i in s:
        s = s.replace(i, '*' * len(i))
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

for i in range(len(li)):
    if type(li[i]) == list:
        for j in range(len(li[i])):
            print(li[i][j])
    else:print(li[i])

 

默写

1,将列表的增删改查不同的方法全部写出来, 例如:增:有三种,append:在后面添加。Insert按照索引添加, expend:迭代着添加。

2,默写第,13题的实现的代码。

 

posted @ 2018-12-23 22:40  dongye95  阅读(647)  评论(0编辑  收藏  举报