任务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,5),不包括

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

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

问题4:使用line12-14生成的集合s2,len(s2)一定是5吗?回答并说明你的理由。一定,因为len(s2)不满足<5时程序停止运行

任务2

# 要求编写程序task2.py对这组数据进行清洗、统计,统计出某个兴趣爱好,及其在所有用户调查中的次数,按照被用户提及的兴趣次数由高->低打印。
a=list(datas.values())
b=[]
for m in a:
    for n in m:
        b.append(n)
c={}
for i in b:
    c[i]=b.count(i)
d=list(c.items())
e=sorted(d,key=lambda n: n[1],reverse=True)
for m,g in e:
    print(f'{m}:{g}')

 

 

 任务3

lower = []
higher = []
for i in range(len(temperatures)):
    lower.append(int(temperatures[i][2]))
    lowest = min(lower)
    higher.append(int(temperatures[i][3]))
    highest = max(higher)
x = sum(lower)/len(lower)
y = sum(higher)/len(higher)
print('这一周的最低温:', lowest, '°C', '\n最高温:', highest, '°C', '\n平均气温:', int(x), '~', int(y), '°C')

 

 

 任务4

import random
day=random.randint(1,31)
for i in range(3):
    x=input('猜猜2022年5月几日是你的lucky day:')
    i+=1
    if i==3 and day!=int(x):
        print('次数用光了')
        print('偷偷告诉你 你的lucky day 是',day)
    while True:
       if day == int(x) :
           print('哇,猜中了')
       elif int(x) < day and i !=3:
           print('猜早了,你的lucky day 还没到呢')
       elif int(x) > day and i!=3:
           print('猜晚了,你的lucky day 已经过了')
     

 

 

 

 

 任务5

# 编程实现一个十进制到二进制、八进制、十六进制的转换程序。
# 要求:不使用Python标准库提供的进制转换工具,根据进制转换计算规则自行设计算法并实现。
# 从键盘输入十进制数据x和转换的进制n(n取2或8或16),打印输出x的n进制表示
x = eval(input('输入一个数:'))
n = eval(input('输入所要转换的进制:'))
a = x
y = []
list = ["A", "B", "C", "D", "E", "F"]
while x != 0:
     p = x % n
     if n == 16:
         if p > 9:
             b = p%10
             p = list[b]
     y.append(p)
     x = x // n
y.reverse()
z = "".join("%s" % i for i in y)
print(f'{a}的{n}进制是:',z)

 

 

 

 

 

posted on 2022-04-27 09:44  清橙往忆  阅读(31)  评论(1编辑  收藏  举报