实验3

------------恢复内容开始------------

实验任务1:

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 不包括5

利用 list(range(1,5)) 生成的有序序列范围是?是否包括5?1,2,3,4 不包括5

问题3:使用line8生成的集合s1,len(s1)一定是5吗?回答并说明你的理由。不一定

问题4:使用line12-14生成的集合s2,len(s2)一定是5吗?回答并说明你的理由。一定

实验任务2:

datas = {'2049777001': ['篮球', '羽毛球', '美食', '漫画'],
         '2049777002': ['音乐', '旅行'],
         '2049777003': ['马拉松', '健身', '游戏'],
         '2049777004': [],
         '2049777005': ['足球', '阅读'],
         '2049777006': ['发呆', '闲逛'],
         '2049777007': [],
         '2049777008': ['书法', '电影'],
         '2049777009': ['音乐', '阅读', '电影', '漫画'],
         '2049777010': ['数学', '推理', '音乐', '旅行']
         }
a=[x for i in datas.values() for x in i]
b=[(a.count(i),i) for i in set(a)]
b.sort(reverse=True)
for i in b:
    print(f'{i[1]}:{i[0]}')

实验结果:

实验任务3:

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']]
a=[]
b=[]
for i in range(len(temperatures)):
    a.append(int(temperatures[i][3]))
    b.append(int(temperatures[i][2]))
h=max(a)
l=min(b)
m=sum(a)//7
n=sum(b)//7
print(f'未来一周最低气温:{l}℃\n未来一周最高气温:{h}℃\n未来一周平均气温区间{n}℃-{m}℃')

实验结果:

实验任务4:

import random as r
def k(x):
    if x>a:return "猜晚啦,你的lucky day已经过啦\n再猜(1~31):"
    elif x<a:return "猜早啦,你的lucky day还没到呢\n再猜(1~31):"
    else:return "哇,猜中了:-)"
a=r.randint(1,32)
b=int(input("猜猜2022年5月那一天会是你的lucky day:-)\n你有三次机会,猜吧(1~31):"))
i=0
m="哇,猜中了:-)"
while  i<2:
    b=int(input(k(b)))
    m=k(b)
    i+=1
    if m=="哇,猜中了:-)":print(m)
    if i ==2: print(f"次数用光了\n偷偷告诉你,5月你的lucky day是{a}号,good luck:—)")

实验结果:

实验任务5:

x,n=eval(input('输入十进制整数x和要转换的进制n(2或8或16): '))
if n == 2:
    print('{}的{}进制是:{:b}'.format(x, n, x))
if n == 8:
    print('{}的{}进制是:{:o}'.format(x, n, x))
if n == 16:
    print('{}的{}进制是:{:X}'.format(x, n, x))

实验结果:

 

posted @ 2022-04-24 16:41  刘封云  阅读(28)  评论(3编辑  收藏  举报