python练习题

一、完美素数

输入输出示例:

输入区间起点值与终点值

6

30

输出区间内幸运素数

7

23

29

def is_prime(num):#判断是否是素数
    if num < 2:
        return False
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            return False
    return True

def lucky_prime(start, end):#判断是否是完美素数(注意2个参数)
    lucky_nums = []
    for num in range(start, end + 1):
        if not is_prime(num):
            continue
        str_num = str(num)
        is_lucky = True
        while len(str_num) > 1:
            str_num = str_num[:-1]
            if not is_prime(int(str_num)):
                is_lucky = False
                break
        if is_lucky:
            lucky_nums.append(num)
    
    return lucky_nums

start = int(input())
end = int(input())

result = lucky_prime(start, end)
for num in result:
    print(num)



二、用字典输出成绩、考试人数、科目

输入一个字典,字典中存放了三门课程参加考试的学生的分数,

要求将每门课程的平均分添加到分数列表的最后并按样例输出结果,平均分使用round函数保留一位小数。

【提示:输入字典使用d=eval(input())】

输入输出样例如下:

输入:

{'语文':[85,89,76,88],'数学':[88,92,96],'英语':[98,90,95,99,92]}

输出:

语文科目参加考试人数为4均分为84.5

数学科目参加考试人数为3均分为92.0

英语科目参加考试人数为5均分为94.8

{'语文': [85, 89, 76, 88, 84.5], '数学': [88, 92, 96, 92.0], '英语': [98, 90, 95, 99, 92, 94.8]}

d=eval(input())
dic={}
for k,v in d.items():  #用items遍历字典
    s=0
    l=len(v)
    for i in v:
        s=s+i
    avg=round(s/l,1)
    print("{}科目参加考试人数为{}均分为{}".format(k,l,avg))
    v.append(avg)
    dic[k]=v
print(dic)

三、改变列表,计算方差

ls=eval(input())
m=eval(input())

for i in range(0,len(ls)):
    if ls[i]<m:
        ls[i]=3*ls[i]
    elif ls[i]>m:
        ls[i]=2*ls[i]
print(ls)

avg=sum(ls)/len(ls)
var1=0
for i in ls:
    var1+=(i-avg)**2
var=1/(len(ls)-1)*var1
print("{:.2f}".format(var))

四、计算天数

编写一程序,输入年月日,输出这一天是该年的第几天。

输入的年月日格式为:2023-02-09,其中年份为4字符,月份和日期均为2字符。

输入输出样例1:

输入:

2023-02-01

输出

32

输入输出样例2:

输入:

2020-03-01

输出

61

a=input()
ls=a.split('-')
y=int(ls[0])
m=int(ls[1])
d=int(ls[2])
days=[31,28,31,30,31,30,31,31,30,31,30,31]
if y%4==0 and y%100!=0 or y%400==0:   #判断是否是闰年,推出2月的天数
    days[1]=29
count=0
for i in range(0,int(m)-1):
    count+=days[i]
result=int(d)+count
print(result)

相关推荐

  1. python 基础练习题

    2024-06-12 11:36:10       14 阅读
  2. python 基础练习题3

    2024-06-12 11:36:10       18 阅读
  3. python基础练习题4

    2024-06-12 11:36:10       15 阅读
  4. python基础练习题5

    2024-06-12 11:36:10       18 阅读
  5. python基础练习题6

    2024-06-12 11:36:10       15 阅读
  6. 笔记:Python 注释(练习题

    2024-06-12 11:36:10       13 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-12 11:36:10       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-12 11:36:10       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-12 11:36:10       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-12 11:36:10       20 阅读

热门阅读

  1. 大数据知识分享:Python中的变量

    2024-06-12 11:36:10       7 阅读
  2. 力扣981.基于时间的键值存储

    2024-06-12 11:36:10       9 阅读
  3. 【rust 第三方库】serde 序列化反序列化框架

    2024-06-12 11:36:10       8 阅读
  4. 分布式系统

    2024-06-12 11:36:10       4 阅读
  5. Python语言在金融领域的应用探索

    2024-06-12 11:36:10       7 阅读
  6. Thymeleaf 2升级到Tymeleaf 3导致Layout不起作用

    2024-06-12 11:36:10       5 阅读
  7. Android单例的几种实现方式

    2024-06-12 11:36:10       6 阅读
  8. idea自动生成单元测试工具

    2024-06-12 11:36:10       4 阅读
  9. linux中sed命令和awk命令如何使用??????

    2024-06-12 11:36:10       6 阅读
  10. Django里的模板变量

    2024-06-12 11:36:10       3 阅读
  11. SQL题——连续问题

    2024-06-12 11:36:10       6 阅读
  12. 【编译安卓ROM常见错误和注意事项】

    2024-06-12 11:36:10       6 阅读