实验3——控制语句与组合数据类型应用编程
作者:互联网
task1
import random
print('用列表存储随机整数: ')
ls = [random.randint(1, 100) for i in range(5)]
print(ls)
print('\n用集合存储随机整数: ')
s1 = {random.randint(1,100) for i in range(5)}
print(s1)
print('\n用集合存储随机整数: ')
s2 = set()
while(len(s2)<5):
s2.add(random.randint(1,100))
print(s2)
实验一:
问题1: random.randint(1,100) 生成的随机整数范围是?能否取到100? [1,100] 问题2:利用 list(range(5)) 生成的有序序列范围是?是否包括5?(0,1,2,3,4) 利用 list(range(1,5)) 生成的有序序列范围是?是否包括5?(1,2,3,4) 问题3:使用line8生成的集合s1,len(s1)一定是5吗?不一定 问题4:使用line12-14生成的集合s2,len(s2)一定是5吗?一定task2
datas = {'2049777001': ['篮球', '羽毛球', '美食', '漫画'],
'2049777002': ['音乐', '旅行'],
'2049777003': ['马拉松', '健身', '游戏'],
'2049777004': [],
'2049777005': ['足球', '阅读'],
'2049777006': ['发呆', '闲逛'],
'2049777007': [],
'2049777008': ['书法', '电影'],
'2049777009': ['音乐', '阅读', '电影', '漫画'],
'2049777010': ['数学', '推理', '音乐', '旅行']}
list1=list(datas.values())
s=set()
list2=[]
print(list1)
for i in list1:
for b in i:
s.add(b)
for j in s:
a=0
for i in list1:
for b in i:
if j==b:
a+=1
list2.append(a)
d2=dict(zip(s,list2))
l1=list(d2.items())
l2=sorted(l1,key=lambda i:i[1],reverse=True)
for m,n in l2:
print(f'{m},{n}')
task3
temperatures= [['2022-04-18', '星期一', '10', '22'],
['2022-04-19', '星期二', '10', '22'],
['2022-04-20', '星期三', '12', '25'],
['2022-04-21', '星期四', '13', '28'],
['2022-04-22', '星期五', '16', '31'],
['2022-04-23', '星期六', '19', '31'],
['2022-04-24', '星期日', '19', '27']]
tem_max=[]
tem_min=[]
for list1 in temperatures:
tem_max.append(list1[3])
tem_min.append(list1[2])
tem1=max(tem_max)
tem2=min(tem_min)
print(f'低气温:{tem2}℃')
print(f'高气温:{tem1}℃')
x=0
y=0
for i in tem_min:
x+=int(i)
for n in tem_max:
y+=int(n)
x1=x//len(tem_min)
y1=y//len(tem_max)
print(f'均气温区间:{x1}℃~{y1}℃')
task4
import random
print('2022年5月哪一天会是你的lucky day:-')
x=random.randint(1,32)
y1=int(input("三次机会,猜吧(1~31):"))
if y1==x:
print("猜中了:-)")
else:
if y1>int(x):
print("啦,你的lucky day已经过啦")
y2=int(input("(1~31):"))
if y2==x:
print("猜中了:-)")
elif y2>int(x):
print("啦,你的lucky day已经过啦")
y3=int(input("(1~31):"))
if y3==x:
print("猜中了:-)")
else:
print("用光啦.")
print(f'告诉你,5月你的lucky day是{x}号.good luck:-')
else:
print("啦,你的lucky day还没到呢")
y3 = int(input("(1~31):"))
if y3 == x:
print("猜中了:-)")
else:
print("用光啦.")
print(f'告诉你,5月你的lucky day是{x}号.good luck:-')
else:
print("啦,你的lucky day还没到呢")
y2 = int(input("(1~31):"))
if y2 == x:
print("猜中了:-)")
elif y2 > int(x):
print("啦,你的lucky day已经过啦")
y3 = int(input("(1~31):"))
if y3 == x:
print("猜中了:-)")
else:
print("用光啦.")
print(f'告诉你,5月你的lucky day是{x}号.good luck:-')
else:
print("啦,你的lucky day还没到呢")
y3 = int(input("(1~31):"))
if y3 == x:
print("猜中了:-)")
else:
print("用光啦.")
print(f'告诉你,5月你的lucky day是{x}号.good luck:-')
task5
x,n=eval(input("输入十进制整数x和要转换的进制n(2或8或16):"))
a=[]
zuo=x//n
a.append(x%n)
while zuo:
a.append(zuo%n)
zuo=zuo//n
print(f'{x}的{n}进制是:',end='')
for i in a[::-1]:
if 10<=i<=16:
print(chr(55+i),end='')
else:
print(i,end='')
标签:语句,tem,int,31,编程,数据类型,lucky,print,day 来源: https://www.cnblogs.com/uoiu277/p/16192130.html