码迷,mamicode.com
首页 > 编程语言 > 详细

Python练习题3

时间:2018-07-24 17:49:26      阅读:452      评论:0      收藏:0      [点我收藏+]

标签:元组   star   print   类型   code   通过   是什么   .com   输入   

1.九九乘法表

li = [1,2,3,4,5,6,7,8,9]
for i in li:
    for j in li:
        if i >= j:
            print(i,*,j,=,i*j,end="\t")
    print()

1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81

2.用下划线将列表连接成字符串

li = [123,"hhj","alex"]
li[0] = str(li[0])
v = "_".join(li)
print(v)

123_hhj_alex

3.写代码,有如下元组,按要求实现每一个功能

 tu = (‘alex‘,‘eric‘,‘rain‘)

a.计算元组长度并输出

b.获取元组的第二个元素并输出

c.获取元组的第1,2个元素并输出

d.请使用for输出元组的元素

e.请使用for,len,range输出元组的索引

f.请使用enumrate输出元组元素和序号(序号从10开始)

tu = (alex,eric,rain)
print(len(tu))
print(tu[1])
print(tu[0:2])
for i in tu:
    print(i,end=" ")
for j in range(0,len(tu)):
    print(j,end=" ")
for a,b in enumerate(tu,10):
    print(a,b)

4. 有如下变量,请按要求实现功能

tu = ("alex",[11,22,{"k1":‘v1‘,"k2":["age","name"],"k3":(11,22,33)},44])

请问tu变量中的‘k2’对应的值是什么类型,是否可以被修改?如果可以请在其中添加一个元素“seven”

答:列表类型,可以修改

tu[1][2]["k2"].insert(0,"seven")
print(tu)

(‘alex‘, [11, 22, {‘k1‘: ‘v1‘, ‘k2‘: [‘seven‘, ‘age‘, ‘name‘], ‘k3‘: (11, 22, 33)}, 44])

请问tu变量中的‘k3’对应的值是什么类型,是否可以被修改?如果可以请在其中添加一个元素“seven”

答:元组类型,不可以修改

5.有以下列表:

nums = [2,7,11,15,1,8,7]

请找到列表中任意两个元素相加等于9的元素集合,如:[(0,1),(4,5)]

li = []
for i in nums:
    for j in nums:
        if i + j == 9:
            li.append((i,j,))
print(li)

[(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)]

6.公鸡5文钱/只,母鸡3文钱/只,小鸡3只1文钱,用100文钱买100只鸡,问公鸡,母鸡,小鸡各几只?

for x in range(1,100//5):
    for y in range(1,100//3):
        for z in range(1,100):
            if x + y + z == 100 and x * 5 + y * 3 + z / 3 == 100:
                print((x,y,z),end=" ")

(4, 18, 78) (8, 11, 81) (12, 4, 84) 

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

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

a.计算列表长度并输出

print(len(li))

3

b.列表中追加元素“seven”,并输出添加后的列表

li.append("seven")
print(li)

[‘alex‘, ‘eric‘, ‘rain‘, ‘seven‘]

c.请在列表第1个位置插入元素“Tony”,并输出添加后的列表

li.insert(0,"Tony")
print(li)

[‘Tony‘, ‘alex‘, ‘eric‘, ‘rain‘, ‘seven‘]

d.请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表

li[1] = "Kelly"
print(li)

[‘Tony‘, ‘Kelly‘, ‘eric‘, ‘rain‘, ‘seven‘]

e.请删除列表中的元素“eric”,并输出修改后的列表

li.remove("eric")
print(li)

[‘Tony‘, ‘Kelly‘, ‘rain‘, ‘seven‘]

f.请删除列表第2个元素,并输出删除的元素的值和删除元素后的列表

v = li.pop(1)
print(li,v)

[‘Tony‘, ‘rain‘, ‘seven‘] Kelly

g.请删除列表第3个元素,并输出删除元素后的列表

del li[2]
print(li)

[‘Tony‘, ‘rain‘]

10.分页显示内容

a.通过for创建301条数据,如 alex1 alex1@live.com pwd1

b.提示用户输入页码,每页显示10条数据

 

list = []
for i in range(1,302):
    dic = {"name":"alex"+str(i),"email":"alex"+str(i)+"@live.com","passwd":"pwd"+str(i)}
    list.append(dic)
s = input("请输入页码:")
s = int(s)
start = (s-1) * 10
end = s * 10
result = list[start:end]
for j in result:
    for k in j.values():
        print(k,end=" ")
    print()

 

请输入页码:3

alex21 alex21@live.com pwd21
alex22 alex22@live.com pwd22
alex23 alex23@live.com pwd23
alex24 alex24@live.com pwd24
alex25 alex25@live.com pwd25
alex26 alex26@live.com pwd26
alex27 alex27@live.com pwd27
alex28 alex28@live.com pwd28
alex29 alex29@live.com pwd29
alex30 alex30@live.com pwd30

 

Python练习题3

标签:元组   star   print   类型   code   通过   是什么   .com   输入   

原文地址:https://www.cnblogs.com/zhangsenzhen/p/9360567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!