python基础题练习

1.可否定义一个sum函数呢?返回指定区间的值的和?例如,区间[1,4]的和为1+2+3+4=10返回指定区间值的平方的和呢?立方呢?

代码:

# 计算从start到end(包括end)的所有整数的和。
def sum_range(start, end):total = 0for i in range(start, end + 1):total += ireturn total
# 计算从start到end(包括end)的所有整数的平方和。
def sum_of_squares(start, end):total = 0for i in range(start, end + 1):total += i ** 2return total
# 计算从start到end(包括end)的所有整数的立方和。
def sum_of_cubes(start, end):total = 0for i in range(start, end + 1):total += i ** 3return total
# 计算区间[1, 4]的和
print("Sum of range [1, 4]:", sum_range(1, 4))  
# 计算区间[1, 4]的平方和
print("Sum of squares of range [1, 4]:", sum_of_squares(1, 4))  
# 计算区间[1, 4]的立方和
print("Sum of cubes of range [1, 4]:", sum_of_cubes(1, 4))

运行结果:

Sum of range [1, 4]: 10
Sum of squares of range [1, 4]: 30
Sum of cubes of range [1, 4]: 100

2.定义一个gcd函数,计算两个数的最大公因数

代码:

def gcd(a,b):while b:a,b=b,a%breturn a
print(gcd(28,12))

运行结果:

4

3.求出1-100之间的奇数之和

代码:

sumjs=0
for i in range(1,101):if(i%2!=0):sumjs+=i
print(sumjs)

运行结果:

2500

4.定义一个int类型变量接收一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和:

1.数字的个位数不为7;
2.数字的十位数不为5;
3.数字的百位数不为3;
代码:

a=int(input("输入一个大于100的整数:"))
sum1=0
for i in range(100,a+1) :if(i%10!=7 and i//10%10!=5 and i//100!=3):sum1+=i
print(sum1)

运行结果:

输入一个大于100的整数:243
20900

5.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

代码:

def rabbit(n):if n==1 or n==2:return 1a,b=1,1for i in range(3,n+1):a,b=b,a+breturn b
for mon in range(1,13):print(f"第{mon}月的兔子总数为:{rabbit(mon)*2}")

运行结果:

1月的兔子总数为:22月的兔子总数为:23月的兔子总数为:44月的兔子总数为:65月的兔子总数为:106月的兔子总数为:167月的兔子总数为:268月的兔子总数为:429月的兔子总数为:6810月的兔子总数为:11011月的兔子总数为:17812月的兔子总数为:288

6.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

代码:

for i in range(100,1000):if i==(i%10)**3+(i//10%10)**3+(i//100)**3:print(i)

运行结果:
153
370
371
407

7.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

代码:

zm,kg,sz,others=0,0,0,0
str = input("请输入一行字符串:")
for char in str:if char.isalpha():zm += 1elif char.isspace():kg += 1elif char.isdigit():sz += 1else:others += 1
print("英文字母个数:", zm)
print("空格个数:", kg)
print("数字个数:", sz)
print("其它字符个数:", others)

运行结果:

请输入一行字符串:sekhhfk 4536!2#$%&^Gjhg^&
英文字母个数: 11
空格个数: 1
数字个数: 5
其它字符个数: 8

8.输出9*9口诀。

代码:

for i in range(1,10):for j in range(1,i+1):print(f"{j}*{i}={i*j}",end='\t')print()

运行结果:

1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

9.给定一个列表,统计列表中每个元素出现的次数。

代码:

from collections import Counter
fruits = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple']
counter = Counter(fruits)
print(counter)

运行结果:

Counter({'apple': 3, 'banana': 2, 'orange': 1})

10.从列表 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 中提取所有的偶数,形成一个新列表。

代码:

list=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list2=[i for i in list if i%2==0 ]
print(list2)

运行结果:

[2, 4, 6, 8, 10]

11.反转列表 [10, 20, 30, 40, 50]。

代码:

list=[10, 20, 30, 40, 50]
list2=list[::-1]
print(list2)

运行结果:

[50, 40, 30, 20, 10]

12.合并两个元组 tuple1 = (1, 2, 3) 和 tuple2 = (4, 5, 6)。

代码:
tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
tuple3=tuple1+tuple2
print(tuple3)
运行结果:

(1, 2, 3, 4, 5, 6)

13.编写一个 Python 程序,查找元组中的最大和最小值。

代码:

nums = (7, 2, 9, 4, 5)
print(max(nums))

运行结果:

9

14.创建一个字典,键为 1 到 5,值为它们的平方。

代码:

dic={i:i**2 for i in range(1,6)}
print(dic)

运行结果:

{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

15.写一个 Python 程序,按值对字典进行排序。

代码:

my_dict = {'apple': 2, 'banana': 4, 'cherry': 1}
sort_dict=dict(sorted(my_dict.items(),key=lambda item: item[1]))
print(sort_dict)

运行结果:

{'cherry': 1, 'apple': 2, 'banana': 4}

16.将字典的所有键和值交换,生成一个新字典。

代码:

my_dict = {'a': 1, 'b': 2, 'c': 3}
dict2={value:key for key,value in my_dict.items()}
print(dict2)

运行结果:

{1: 'a', 2: 'b', 3: 'c'}

17.写一个程序,统计字符串中的每个字符出现的次数,结果保存在字典中。

代码:

text = 'hello world'
dic={}
for char in text:if char in dic:dic[char] += 1else:dic[char] = 1
print(dic)

运行结果:

{'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}

18.给定一个学生成绩的字典,查找平均成绩。

代码:

grades = {'Alice': 85, 'Bob': 78, 'Charlie': 92}
n=len(grades)
total=sum(grades.values())
print(f"平均成绩为:{total//n}")

运行结果:

平均成绩为:85

19.创建一个字典,存储多个学生的名字和分数,并找出得分最高的学生。

代码:

students = {'Alice': 85, 'Bob': 90, 'Charlie': 88}
highest_score = -1
highest_stu = ""
for student, score in students.items():if score > highest_score:highest_score = scorehighest_stu = student
print(f"最高分学生名字:{highest_stu} 的最高分数为: {highest_score}.")

运行结果:

最高分学生名字:Bob 的最高分数为: 90.

20.写一个 Python 程序,将两个列表合并为一个字典。

代码:

names = ['Alice', 'Bob', 'Charlie'] 
scores = [85, 90, 88]
dic=dict(zip(names,scores))
print(dic)

运行结果:

{'Alice': 85, 'Bob': 90, 'Charlie': 88}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/54752.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot框架之KOB项目 - 配置Mysql与注册登录模块(中)

修改Spring Security 登录验证模式 传统的验证登录模式 公开页面:输入url就可以直接访问授权页面:登录之后才可以访问 Jwt验证模式 容易实现跨域不需要在服务器端存储 对比于传统模式将所有的sessionId换成jwt token access token refresh token 过…

分发饼干00

题目链接 分发饼干 题目描述 注意点 1 < g[i], s[j] < 2^31 - 1目标是满足尽可能多的孩子&#xff0c;并输出这个最大数值 解答思路 可以先将饼干和孩子的胃口都按升序进行排序&#xff0c;随后根据双指针 贪心&#xff0c;将当前满足孩子胃口的最小饼干分配给该孩…

Android开发高频面试题之——Android篇

Android开发高频面试题之——Android篇 Android开发高频面试题之——Java基础篇 Android开发高频面试题之——Kotlin基础篇 Android开发高频面试题之——Android基础篇 1. Activity启动模式 standard 标准模式,每次都是新建Activity实例。singleTop 栈顶复用。如果要启动的A…

关于预处理的一系列问题

1. 预定义符号 C语⾔设置了⼀些预定义符号&#xff0c;可以直接使⽤&#xff0c;预定义符号也是在预处理期间处理的。 2. #define定义常量 #define name stuff 如果定义的 stuff过⻓&#xff0c;可以分成⼏⾏写&#xff0c;除了最后⼀⾏外&#xff0c;每⾏的后⾯都加⼀个反…

win10下使用docker、k8s部署java应用

在上一篇文章 Windows10上Docker和Kubernetes的安装 中&#xff0c;已经介绍了在 Windows10上安装Docker和Kubernetes &#xff0c;有了这个环境基础之后&#xff0c;就可以用来部署服务了 在项目目录下新建Dockfile文件&#xff0c;内容如下&#xff08;请根据实际情况调整&am…

前端——阿里图标的使用

阿里图标 将小图标定义成字体&#xff0c;通过引入字体的方式来展示这些图标 1.打开阿里图标库 https://www.iconfont.cn/ 2.登录 / 注册一个账号 3.选中你需要使用的图标 并且把它加入购物车 4.全部选择完之后 点击右上角 购物车 然后下载代码 5.解压后你下载的文…

Web+Mysql——MyBatis

MyBatis 目标 能够完成Mybatis代理方式查询数据能够理解Mybatis核心配置文件的配置 1&#xff0c;Mybatis 1.1 Mybatis概述 1.1.1 Mybatis概念 MyBatis 是一款优秀的持久层框架&#xff0c;用于简化 JDBC 开发 MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由…

面试面经|大模型算法岗常见面试题100道

本文提供了一份全面的大模型算法岗位面试题清单&#xff0c;包括基础理论、模型结构、训练微调策略、应用框架、分布式训练和模型推理等方面的知识点&#xff0c;旨在帮助求职者准备相关技术面试。 一、基础篇 1、目前主流的开源模型体系有哪些&#xff1f; Transformer体系&a…

neo4j(spring) 使用示例

文章目录 前言一、neo4j是什么二、开始编码1. yml 配置2. crud 测试3. node relation 与java中对象的关系4. 编码测试 总结 前言 图数据库先驱者 neo4j&#xff1a;neo4j官网地址 可以选择桌面版安装等多种方式,我这里采用的是docker安装 直接执行docker安装命令: docker run…

zabbix“专家坐诊”第256期问答

原作者&#xff1a;乐维社区 原文链接&#xff1a;https://forum.lwops.cn/questions 问题一 Q&#xff1a;zabbix 6.4.18版本的&#xff0c;使用zabbix_agentd2监控mysql数据库&#xff0c;只能在界面配置mysql的相关信息吗&#xff1f;这个在zabbix表里面是明文存储的&#x…

力扣反转链表系列【25. K 个一组翻转链表】——由易到难,一次刷通!!!

力扣《反转链表》系列文章目录 刷题次序&#xff0c;由易到难&#xff0c;一次刷通&#xff01;&#xff01;&#xff01; 题目题解206. 反转链表反转链表的全部 题解192. 反转链表 II反转链表的指定段 题解224. 两两交换链表中的节点两个一组反转链表 题解325. K 个一组翻转…

在python爬虫中xpath方式提取lxml.etree._ElementUnicodeResult转化为字符串str类型

简单提取网页中的数据时发现的 当通过xpath方式提取出需要的数据的text文本后想要转为字符串&#xff0c;但出现lxml.etree._ElementUnicodeResult的数据类型不能序列化&#xff0c;在网上查找到很多说是编码问题Unicode编码然后解码什么的&#xff1b;有些是(导入的xml库而不…

Java : 图书管理系统

图书管理系统的作用&#xff1a; 高效的图书管理 图书管理系统通过自动化管理&#xff0c;实现了图书的采编、编目、流通管理等操作的自动化处理&#xff0c;大大提高了图书管理的效率和准确性。 工作人员可以通过系统快速查找图书信息&#xff0c;实时掌握图书的借还情况&…

【Java】Java中接口与内部类详解

目录 引言 一、接口&#xff08;Interface&#xff09; 1.1 接口的定义 1.1.1 接口的特点 1.2 接口的实现 1.3 接口的继承 1.4 接口的注意事项 1.5 代码示例 二、内部类&#xff08;Inner Class&#xff09; 2.1 内部类特点 2.2 成员内部类 2.2.1 对象的创建 2.…

红外热成像应用场景!

1. 电力行业 设备故障检测&#xff1a;红外热成像仪能够检测电气设备&#xff08;如变压器、电线接头&#xff09;的过热现象&#xff0c;及时发现并定位故障点&#xff0c;预防火灾等安全事故的发生。 水电站查漏&#xff1a;在水电站中&#xff0c;红外热成像仪可用于快速查…

【LLM学习之路】9月22日 第九天 自然语言处理

【LLM学习之路】9月22日 第九天 直接看Transformer 第一章 自然语言处理 自然语言处理发展史 只要看的足够多&#xff0c;未必需要理解语言 统计语言模型发展史 统计语言模型&#xff1a; 判断一个句子是否合理&#xff0c;就计算这个句子会出现的概率 缺点是句子越长越…

掌握Python办公自动化,轻松成为职场高效达人

大家好&#xff0c;今天我们来聊聊为什么要学习和了解Python办公自动化&#xff1f; "自动化应用于高效运营将提高效率" ——比尔盖茨 在日常的工作中&#xff0c;存在很多重复性、规律性的工作。虽然现在有很多办公软件能够在一些方面提高工作效率&#xff0c;但无法…

基于FPGA+GPU异构平台的遥感图像切片解决方案

随着遥感和成像技术的不断进步和普及&#xff0c;获取大量高分辨率的遥感图像已成为可能。这些大规模的遥感图像数据需要进行有效的处理和分析&#xff0c;以提取有用的信息&#xff0c;进行进一步的应用。遥感图像切片技术应运而生&#xff0c;该技术可以将大型遥感图像分割成…

python-在PyCharm中使用PyQt5

文章目录 1. 安装 PyQt5 和QtTools2. QtDesigner 和 PyUIC 的环境配置2.1 在 PyCharm 添加 Create Tools2.2 添加 PyUIC 工具 3. 创建ui界面4. 使用python调用ui界面参考文献 1. 安装 PyQt5 和QtTools QT 是最强大的 GUI 库之一&#xff0c;PyQt5 是 Python 绑定 QT5 应用的框…

增强GPT4v的Grounding能力,video-level

开源链接&#xff1a; appletea233/AL-Ref-SAM2: AL-Ref-SAM 2: Unleashing the Temporal-Spatial Reasoning Capacity of GPT for Training-Free Audio and Language Referenced Video Object Segmentation (github.com) In this project, we propose an Audio-Language-Refe…