常见的Python编程练习题及其答案解析附示例代码详解

以下是几个常见的Python编程练习题及其答案解析:

1. 编写一个程序,将输入的字符串反转并输出。

def reverse_string(s):return s[::-1]input_str = input("请输入一个字符串:")
print("反转后的字符串是:", reverse_string(input_str))

解析:该程序定义了一个名为 reverse_string 的函数,它接受一个字符串参数 s,并返回反转后的字符串。使用切片操作 [::-1] 可以方便地反转字符串。程序通过 input 函数获取用户输入的字符串,并调用函数将其反转后输出。

2. 编写一个程序,计算并输出1到100的和。

total = 0
for i in range(1, 101):total += i
print("1到100的和为:", total)

解析:该程序使用 for 循环遍历从1到100的整数,并将每个数累加到变量 total 中。最后,程序输出累加结果。

3. 编写一个程序,判断一个数是否为素数。

def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为素数:", is_prime(num))

解析:该程序定义了一个名为 is_prime 的函数,用于判断一个数是否为素数。函数接受一个整数参数 n,并返回一个布尔值。程序通过 input 函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。

4. 编写一个程序,将输入的字符串中的元音字母替换成“*”,输出修改后的字符串。

def replace_vowels(s):vowels = 'aeiouAEIOU'for vowel in vowels:s = s.replace(vowel, '*')return sinput_str = input("请输入一个字符串:")
print("替换元音后的字符串是:", replace_vowels(input_str))

解析:该程序定义了一个名为 replace_vowels 的函数,它接受一个字符串参数 s,并将字符串中的所有元音字母替换成“*”,然后返回修改后的字符串。程序通过 input 函数获取用户输入的字符串,并调用函数将其中的元音字母替换后输出。

5. 编写一个程序,计算并输出1到50的和

total = 0
for i in range(1, 51):total += i
print("1到50的和为:", total)

解析:该程序使用 for 循环遍历从1到50的整数,并将每个数累加到变量 total 中。最后,程序输出累加结果。

6. 编写一个程序,判断一个数是否为质数。

def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为质数:", is_prime(num))

解析:该程序定义了一个名为 is_prime 的函数,用于判断一个数是否为质数。函数接受一个整数参数 n,并返回一个布尔值。程序通过 input 函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。

7. 编写一个程序,将输入的字符串中的所有字母转换为大写,并输出。

def to_uppercase(s):return s.upper()input_str = input("请输入一个字符串:")
print("转换为大写后的字符串是:", to_uppercase(input_str))

解析:该程序定义了一个名为 to_uppercase 的函数,它接受一个字符串参数 s,并返回将字符串中的所有字母转换为大写后的结果。程序通过 input 函数获取用户输入的字符串,并调用函数将其转换为大写后输出。

8. 编写一个程序,计算并输出1到50的和。

total = 0
for i in range(1, 51):total += i
print("1到50的和为:", total)

解析:该程序使用 for 循环遍历从1到50的整数,并将每个数累加到变量 total 中。最后,程序输出累加结果。

9. 编写一个程序,判断一个数是否为质数。

def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为质数:", is_prime(num))

解析:该程序定义了一个名为 is_prime 的函数,用于判断一个数是否为质数。函数接受一个整数参数 n,并返回一个布尔值。程序通过 input 函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。

10. 编写一个程序,读取一个文件中的内容并将其打印出来。

def read_file(filename):with open(filename, 'r') as file:content = file.read()print(content)filename = input("请输入文件名:")
read_file(filename)

解析:该程序定义了一个名为 read_file 的函数,它接受一个文件名参数,打开该文件并读取其内容,然后打印出来。程序通过 input 函数获取用户输入的文件名,并调用函数读取并打印该文件的内容。

11. 编写一个程序,将一个列表中的元素逆序排列,并输出结果。

def reverse_list(lst):lst.reverse()return lstinput_list = [1, 2, 3, 4, 5]
print("逆序排列后的列表是:", reverse_list(input_list))

解析:该程序定义了一个名为 reverse_list 的函数,它接受一个列表参数,使用内置函数 reverse() 将列表中的元素逆序排列,并返回修改后的列表。程序创建一个包含1到5的整数列表作为输入,并调用函数将其逆序排列后输出。

12. 编写一个程序,判断一个数是否为偶数。

def is_even(n):if n % 2 == 0:return Trueelse:return Falsenum = int(input("请输入一个整数:"))
print(num, "是否为偶数:", is_even(num))

解析:该程序定义了一个名为 is_even 的函数,用于判断一个数是否为偶数。函数接受一个整数参数 n,并返回一个布尔值。程序通过 input 函数获取用户输入的整数,并调用函数判断其是否为偶数后输出结果。程序使用了取模运算符 % 来判断整数是否可以被2整除。

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

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

相关文章

idea快速定位文件、自动定位文件位置

如何快速定位到Student类的位置 如下图&#xff1a;点击类似瞄准按钮的图标即可 自动定位到文件位置 打开设置&#xff0c;勾选这个Always Select Opened File 这样子你点击文件他就会自动追踪&#xff0c;切换一个追踪一个&#xff1b; 事半功倍 &#xff01;&#xff01…

[揭秘] 文件恢复工具背后的真相!所有删除的文件都可以恢复吗

许多数据恢复工具声称它们可以在您意外删除文件时为您提供帮助。然而&#xff0c;并非所有数据恢复工具都有相同的目的。有些是针对特定文件类型而设计的&#xff0c;而另一些则无法处理用户的请求。 当我们谈论数据恢复工具时&#xff0c;用户存在很多误解。每个人最常见的问…

Vue配置代理解决跨域

Network的status中报CORS error指在前端&#xff08;Vue.js&#xff09;发起跨域请求时&#xff0c;被服务器拒绝访问的错误 在本地开发环境中&#xff0c;Vue.js 将默认从 http://localhost:8080 启动服务器。如果浏览器访问服务器时使用的 URL 不是该地址&#xff0c;就可能…

编程创意汇聚地,打造个性作品集 | 开源日报 No.97

spring-projects/spring-boot Stars: 70.4k License: Apache-2.0 Spring Boot 是一个用于简化 Spring 应用程序开发的框架&#xff0c;它通过提供默认配置和约定大于配置的方式来减少开发者的工作量。Spring Boot 可以快速地创建独立的、生产级别的基于 Spring 框架的应用程序…

Element-ui框架完成vue2项目的vuex的增删改查

看效果图是否是你需要的 这是原来没有Element-ui框架的 首先&#xff0c;你要在你的项目里安装Element-ui yarn命令 yarn add element-uinpm命令 npm install element-ui --save好了现在可以粘贴代码 //main.js import Vue from vue import Vuex from vuex import VueRouter …

Vue.observable

让一个对象可响应。Vue 内部会用它来处理 data 函数返回的对象。 返回的对象可以直接用于渲染函数和计算属性内&#xff0c;并且会在发生变更时触发相应的更新。也可以作为最小化的跨组件状态存储器&#xff0c;用于简单的场景&#xff1a; const state Vue.observable({ coun…

【react】动态页面转换成html文件下载,解决样式问题

需求 今天遇到一个需求&#xff0c;挺恶心人的&#xff0c;将一个在线文档页面&#xff0c;可以导出成为html页面查看。 看到网上有使用fs模块&#xff0c;通过react的ReactDOMServer.renderToStaticMarkup将组件转成html字符串&#xff0c;输出文件了。 但是我尝试了&#x…

【1day】蓝凌OA 某接口敏感信息泄露漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现 五、漏洞修

STL(一)(pair篇)

1.pair的定义和结构 在c中,pair是一个模板类,用于表示一对值的组合它位于<utility>头文件中 pair的定义如下: template<class T1, class T2> struct pair{T1 first; //第一个值T2 second; //第二个值//构造函数pair();pair(const T1&x,const T2&y);//比较…

3、Linux_系统用户管理

1.Linux 用户管理 1.1概述 Linux系统是一个多用户多任务的操作系统&#xff0c;任何一个要使用系统资源的用户&#xff0c;都必须首先向系统管理员申请一个账号&#xff0c;然后以这个账号的身份进入系统。root用户是系统默认创建的管理员账号。 1.2添加用户 语法 useradd […

[Linux] nginx配置的主配置文件

一、六个模块的作用 全局块&#xff1a;全局配置&#xff0c;对全局生效&#xff1b; events块&#xff1a;配置影响 Nginx 服务器与用户的网络连接&#xff1b; http块&#xff1a;配置代理&#xff0c;缓存&#xff0c;日志定义等绝大多数功能和第三方模块的配置&#xff1b;…

Qt 输入一组数,排序后用柱状图显示

Qt柱状图&#xff0c;需要使用到QChart模块&#xff0c;因此需要在安装Qt时勾选上QChart模块。然后在工程.pro文件中加上 QT charts 参考代码&#xff1a; //MainWindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QPushButton…

模块一:双指针——1089.复写零

文章目录 题目解析算法原理异地原地 代码实现 题目解析 题目链接&#xff1a;1089.复写零 这题的暴力解法还是很简单的&#xff0c;不过这道题因为加了两个限制之后&#xff0c;多了一些细节需要去处理。我们通过一个例子来讲解这道题目&#xff1a; 在这个示例中&#xff0…

EM32DX-C2【C#】站9

1说明: 分布式io,CAN总线,C#上位机二次开发(usb转CAN模块) 2DI: 公共端是: 0V【GND】 X0~X15:自带24v 寄存器地址:0x6100-01 6100H DI输入寄存器 16-bit (16位输入) 00H U8 子索引总数 01H Unsigned16 IN16bit(上传16位输入值)【读DI 15~0】02H Unsigned1…

六个自媒体写作方法,提升自媒体创作收益

在自媒体时代&#xff0c;写作成为了一个不可或缺的技能。特别是对于新手来说&#xff0c;掌握一些有效的写作方法&#xff0c;可以事半功倍&#xff0c;更好地展现个人创意和观点。在这里&#xff0c;我将分享六个适合新手的自媒体写作方法&#xff0c;希望能够为你在写作之路…

ubuntu 20.04.6 desk 安装 初始化

ubuntu 20.04.6 desk 安装 初始化 ssh https://blog.csdn.net/wowocpp/article/details/127470332 sudo apt update sudo apt install openssh-server -y sudo service ssh status 不用配置 就可以连接 sudo vim /etc/ssh/sshd_config sudo service ssh restart sudo servic…

贪心算法背包问题c

在背包问题中&#xff0c;贪心算法通常用来解决0-1背包问题&#xff0c;也就是每种物品都有固定数量&#xff0c;你可以选择拿或者不拿&#xff0c;但不可以拿走部分。以下是一个用C语言实现的贪心算法的例子&#xff1a; #include <stdio.h>#define MAX_N 1000#define …

大数据项目——基于Django/协同过滤算法的房源可视化分析推荐系统的设计与实现

大数据项目——基于Django/协同过滤算法的房源可视化分析推荐系统的设计与实现 技术栈&#xff1a;大数据爬虫/机器学习学习算法/数据分析与挖掘/大数据可视化/Django框架/Mysql数据库 本项目基于 Django框架开发的房屋可视化分析推荐系统。这个系统结合了大数据爬虫、机器学…

递增三元组

遍历三层循环,数据量十分地大,可以找第一行小于第二行的 再找第三行大于第二行的,所有方案的和 通过分析测试样例,111,222,333这三个数存在重复计算。可以想办法存一下每个数的出现次数 如果是111666999.不管1和9怎么变,只要第一行小于6,第二行小于9,答案不变 所以可以想办法存…

如何使用promot提示词的相关总结

了解一下大模型相关知识&#xff1a; 1.大模型是一种大规模的预训练模型&#xff0c;其训练分为几个阶段&#xff0c;包括预训练、微调和强化学习。 2.预训练阶段使用大规模的常识性数据进行训练&#xff0c;以充实模型在特定领域的支持。 3.微调阶段使用与实际业务场景相关性…