目录
1.编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。
2.编写程序,用一个变量存储你所在小组的组员名单。
3.对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。
4.编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。
5.编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。
6.编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。
7.产生两个随机数x,y,要求0
8.利用生成器表达式生成0-9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。
9.复制一段文章或者论文,利用字典统计出每个字出现的次数。
10.棋盘一共64个小格子,第一个格子放一粒米,第二个2粒米,第三个4粒米,第四个8粒米,以此类推一直把64个格子放满需要多少粒米?要求使用列表推导式和内置函数进行计算。
1.编写程序,用一个变量存储以下信息:学号,姓名,所在学院,专业名称。
程序代码:
x=list(zip(["20212501122","20212501123"],["廖廖","杜杜"],["软件学院","音乐学院"],["软件工程","音乐"]))
print(x)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/01.py
[('20212501122', '廖廖', '软件学院', '软件工程'), ('20212501123', '杜杜', '音乐学院', '音乐')]
进程已结束,退出代码0
2.编写程序,用一个变量存储你所在小组的组员名单。
程序代码:
x = {"杜杜","廖廖","杜小杜","廖小廖"}
for i,j in enumerate(x):
print(i,j)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/02.py
0 杜杜
1 廖小廖
2 廖廖
3 杜小杜
进程已结束,退出代码0
3.对组员名单进行操作,如增加一个同学,减少一个同学,修改一个同学的姓名。
程序代码:
x = {"杜杜","廖廖","杜小杜","廖小廖"}
x.add("小小廖")
x.update({"小廖廖","小杜杜"})
x.discard("小廖廖")
for i,j in enumerate(x):
print(i,j)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/02.py
0 小小廖
1 廖廖
2 杜小杜
3 廖小廖
4 杜杜
5 小杜杜
进程已结束,退出代码0
4.编写程序,录入小组成员的姓氏,利用集合输出小组中的所有姓氏。
程序代码:
x=list(zip("廖廖","杜杜","李子","杨Yy"))
a,b=x
c=set(enumerate(a))
for i in c:
print(i)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/04.py
(0, '廖')
(2, '李')
(1, '杜')
(3, '杨')
进程已结束,退出代码0
5.编写程序,用一个变量存储组员名单,组员Python成绩,计算组员总人数,总分,平均分。
程序代码:
dict_num = {1:["廖廖","python:","99","分"],2:["杜杜","python:","99","分"],3:["张三","python:","85","分"]}
count = 0
f = 0
for i in range(1,max(dict_num)+1):
dict_true = dict_num[i]
j=[dict_true[2]]
f=f+int(j[0])
count+=1
print("计算组总人数为:",count,"人")
print("python总分为:",f,"分")
print("平均分为:","%.2f"%(f/count),"分")
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/05.py
计算组总人数为: 3 人
python总分为: 283 分
平均分为: 94.33 分
进程已结束,退出代码0
6.编写程序,用一个变量存储组员成绩,要求有低于60的成绩,利用列表推导式,筛选出低于60分的成绩。
程序代码:
x={85,77,62,55,45,78,99,95,66,48}
y=[x for x in x if x<=60]
print(y)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/06.py
[45, 48, 55]
进程已结束,退出代码0
7.产生两个随机数x,y,要求0<x<y<组员长度.输出组员成绩[x:y]切片的成绩。
程序代码:
from random import sample
dict_num = {1:["廖廖","python:","99","分"],2:["杜杜","python:","99","分"],3:["张三","python:","55","分"]}
y=sample(range(1,max(dict_num)),1)
x=sample(range(1,max(dict_num)),1)
if y>x:
print("y为:",y,"x为:",x)
z=x+y
a=int(" ".join(list(map(str,x))))
b=int(" ".join(list(map(str,y))))
d=[]
for i in range(1,max(dict_num)+1):
dict_true = dict_num[i]
c=dict_true[2].split()
d.append(c)
print(d)
print(d[a:b])
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/05.py
y为: [2] x为: [1]
[['99'], ['99'], ['55']]
[['99']]
进程已结束,退出代码0
8.利用生成器表达式生成0-9的数值,要求每一个数值乘以你的幸运数字,最后将生成器对象转换成列表,输出列表的结果。
程序代码:
result=list((i*4 for i in range(0,10)))
print(result)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/生成器表达式.py
[0, 4, 8, 12, 16, 20, 24, 28, 32, 36]
进程已结束,退出代码0
9.复制一段文章或者论文,利用字典统计出每个字出现的次数。
程序代码:
x = {"廖廖廖廖廖廖廖廖廖廖是杜杜杜杜杜杜杜杜杜杜的阿"}
y = {"廖": 1, "是": 2, "杜": 3, "的": 4}
a = " ".join(x)
count1 = 0
count2 = 0
count3 = 0
count4 = 0
for i in a:
b = y.get(i)
if b == None:
print("您的字典中没有 {} 这个字,请更新字典".format(i))
else :
if b == 1:
count1 += 1
if b == 2:
count2 += 1
if b == 3:
count3 += 1
if b == 4:
count4 += 1
print("廖:",count1)
print("是",count2)
print("杜",count3)
print("的",count4)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/09.py
您的字典中没有 阿 这个字,请更新字典
廖: 10
是 1
杜 10
的 1
进程已结束,退出代码0
10.棋盘一共64个小格子,第一个格子放一粒米,第二个2粒米,第三个4粒米,第四个8粒米,以此类推一直把64个格子放满需要多少粒米?要求使用列表推导式和内置函数进行计算。
程序代码:
x=[i for i in range(1,65)]
f = 0
for i in x:
f = f + 2**i
print(f-1)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/exercise02/10.py
36893488147419103229
进程已结束,退出代码0