实验3——控制语句与组合数据类型应用编程

2022/4/25 22:42:36

本文主要是介绍实验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='')

 



这篇关于实验3——控制语句与组合数据类型应用编程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程