Python习题详解
练习:
1,计算100以内奇数的和
#计算100以内所有奇数的和
sum = 0
# n = 1
# while n < 100:
# # sum = sum + n
# sum += n
# # n = n + 2
# n += 2
# print(sum)
n = 99 #求偶数时n = 100
while n > 0:sum += n# n = n - 2n -= 2
print(sum)
2,打印直角三角形
*
**
***
****
*****
******
layer = int(input("请输入要打印的层数:")) #layer=3
index = 1
while index <= layer: #layer=3#打印*j = 1while j <= index: #index = 1 2 3print("*",end="")j += 1print() #换行index += 1 # index = 2 3 4
3,打印九九乘法表
i = 1
while i <= 9:j = 1while j <= i:print("%s * %s = %s "%(j,i,(i*j)),end="")j += 1print() #换行i += 1
优化:
i = 1
while i <= 9:j = 1while j <= i:res = i * jif res < 10:print("%s * %s = %s "%(j,i,(i*j)),end="")else:print("%s * %s = %s "%(j,i,(i*j)),end="")j += 1print() #换行i += 1
4,判断一个数是否为质数(质数)
质数又称为素数,一个大于1的自然数,除了1和它本身之外,不能被其他自然数整数的数叫做质 数,最小的质数是2,它是唯一一个偶数质数,例如:2,3,5,7,11,13,17等
#判断一个数是否为质数(素数)
num = int(input("请输入一个数:"))
if num <=1:print("这个数不是质数")
elif num == 2:print("这个数是质数")
else:i = 2while i < num:if num % i == 0:print("这个数不是质数")breaki += 1else:print("这个数是质数")
5,实现猜单词的小游戏
小提示:
import random
word = ("easy","python","difficult","hello")
random.choice(word)
将单词的字母顺序打乱
random.randrange()
len()
import random
dir(random) ----- 查看某个模块(random)的所有的方法
help() ----- 调取帮助文档
import random
WORDS = ("import","pyhon","hello","easy","difficult")
print("欢迎来到猜单词游戏!请将乱序的单词组合成正确的单词")
iscontinue = "Y"
while iscontinue == "Y" or iscontinue == "y" or iscontinue == "YES":words = random.choice(WORDS)right = words# print(words)#打乱顺序newword = ""while words:position = random.randrange(len(words))# print(position)# newword = newword + words[position]newword += words[position]# print(newword)words = words[:position]+words[(position+1):]print("乱序后的单词是:",newword)guess = input("请你猜单词:")"""if guess == right :print("恭喜你,猜对了!")else:print("抱歉,猜错了!")"""while guess != right and guess != "":print("抱歉,猜错了!")guess = input("请你继续猜:")if guess == right :print("恭喜你,猜对了!")iscontinue = input("你是否继续游戏Y/N:")
6,实现两个数的交换(用户输入两个数,存储到内存中的)
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第二个数:"))
#方法一:取中间变量
# temp = num1
# num1 = num2
# num2 = temp
#方法二:求和法
# num1 = num1 + num2 # 30 = 10 + 20
# num2 = num1 - num2 # 30 - 20 = 10
# num1 = num1 - num2 # 30 - 10 = 20
# 方法三:异或交换法(python独有 引入了寄存器)
num1,num2 = num2,num1
print("交换后的num1 = %s ,num2 = %s"%(num1,num2))
7,一个自然数与3的和是5的倍数,以3的差是6的倍数,这个自然数最小是多少?(while)
# index = 0
# while True:
for i in range(1000):if (i + 3) % 5 == 0 and (i - 3 ) % 6 == 0:print(i)breaki += 1
8,在400~500之间求一个数,它被2取余1,被5取余是3,被8取余是1,这个数是多少?
for i in range(400,501):if i % 2 == 1 and i % 5 == 3 and i % 8 == 1:print(i)break
9,打印等腰三角形

layer = int(input("请输入要打印的层数:"))
#每一行
for i in range(1,layer+1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):print("*",end="")print("")
10,打印实心菱形

layer = int(input("请输入要打印的层数:"))
while layer % 2 == 0:layer = int(input("请重新输入要打印的层数(注意要输入奇数行):"))
#上半部分
for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer // 2 + 1 前闭后开的区间#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):print("*",end="")print("")
#下半部分
for i in range(layer // 2 ,0,-1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):print("*",end="")print("")
11,打印空心菱形

layer = int(input("请输入要打印的层数:"))
while layer % 2 == 0:layer = int(input("请重新输入要打印的层数(注意要输入奇数行):"))
#上半部分
for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer // 2 + 1 前闭后开的区间#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1:print("*",end="")else:print(" ",end="")print("")
#下半部分
for i in range(layer // 2 ,0,-1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1:print("*",end="")else:print(" ",end="")print("")
12,打印两个组合在一起的三角形

layer = int(input("请输入要打印的层数:"))
while layer % 2 == 0:layer = int(input("请重新输入要打印的层数(注意要输入奇数行):"))
#上半部分
for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer // 2 + 1 前闭后开的区间#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1 or i == layer // 2 + 1:#i == layer // 2 +1判断是不是最后一行print("*",end="")else:print(" ",end="")print("")
#下半部分
for i in range(layer // 2 ,0,-1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1:print("*",end="")else:print(" ",end="")print("")
13,打印圣诞树

layer = int(input("请输入要打印的层数:"))
while layer % 2 == 0:layer = int(input("请重新输入要打印的层数(注意要输入奇数行):"))
#上半部分
for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer // 2 + 1 前闭后开的区间#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1 or i == layer // 2 + 1 or j == star_num// 2:#i == layer // 2 + 1判断是不是最后一行 j == star_num // 2判断是不是中间那一列print("*",end="")else:print(" ",end="")print("")
#下半部分
for i in range(layer // 2 ,0,-1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == star_num // 2:print("*",end="")else:print(" ",end="")print("")
14,打印以下图形

layer = int(input("请输入要打印的层数:"))
while layer % 2 == 0:layer = int(input("请重新输入要打印的层数(注意要输入奇数行):"))
#上半部分
for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer // 2 + 1 前闭后开的区间#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1 or i == layer // 2 + 1 or j == star_num// 2:#i == layer // 2 + 1判断是不是最后一行 j == star_num // 2判断是不是中间那一列print("*",end="")else:print(" ",end="")print("")
#下半部分
for i in range(layer // 2 ,0,-1):#计算空格的个数sapce_num = layer - ifor j in range(0,sapce_num):print(" ",end="")#计算*的个数star_num = 2 * i - 1for j in range(0,star_num):#判断一下是否是第一个和最后一个if j == 0 or j == star_num - 1 or j == star_num // 2:print("*",end="")else:print(" ",end="")print("")
相关文章:
Python习题详解
练习: 1,计算100以内奇数的和 #计算100以内所有奇数的和 sum 0 # n 1 # while n < 100: # # sum sum n # sum n # # n n 2 # n 2 # print(sum) n 99 #求偶数时n 100 while n > 0:sum n# n n - 2n - 2 print(sum)2,打印直…...
绩效考核利器:Excel报表模板,解锁企业高效员工评价新境界
一、背景与目标 在现今的企业管理中,绩效考核是一项至关重要的任务。它旨在评估员工的工作表现,激励员工积极进取,同时也是制定薪酬、晋升、培训等决策的重要依据。为了满足这一需求,我们设计了一款绩效考核Excel报表模板&#x…...
如何使用Lychee+cpolar搭建本地私人图床并实现远程访问存储图片
文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站,可以看做是云存储的一部分,既可…...
跨境支付介绍
1、跨境电商定义和分类; 2、国际贸易清结算; 3、跨境支付; 1、跨境电商定义和分类 跨境电商业务简单说就是指不同国家地域的主体通过电子商务进行交易的一种业务模式。同传统的电商不同,交易双方属于不同的国家。因此࿰…...
如何在Linux搭建MinIO服务并实现无公网ip远程访问内网管理界面
文章目录 前言1. Docker 部署MinIO2. 本地访问MinIO3. Linux安装Cpolar4. 配置MinIO公网地址5. 远程访问MinIO管理界面6. 固定MinIO公网地址 前言 MinIO是一个开源的对象存储服务器,可以在各种环境中运行,例如本地、Docker容器、Kubernetes集群等。它兼…...
Cortex-M可以跑Linux操作系统吗?
在开始前我有一些资料,是我根据网友给的问题精心整理了一份「Linux的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! Cortex-M系列微控制器主要设计…...
日志系统项目(2)项目实现(实用工具类、日志等级类、日志消息类、日志格式化输出类)
前面的文章中我们讲述了日志系统项目的前置知识点,再本文中我们将开始日志项目的细节实现。 日志系统框架设计 本项目实现的是一个多日志器日志系统,主要实现的功能是让程序员能够轻松的将程序运行日志信息落地到指定的位置,且支持同步与异…...
剑指offer面试题19 二叉树的镜像
考察点 树的遍历知识点 题目 分析 我们分析算法题目的思路基本上都是归纳法,即通过举一些普通的例子来推理出算法流程,而画图又是举例子的常用手段,比如针对树或者链表画画图,针对数字类的举一些数字的例子寻找规律,…...
SpringCloud Alibaba 2022之Nacos学习
SpringCloud Alibaba 2022使用 SpringCloud Alibaba 2022需要Spring Boot 3.0以上的版本,同时JDK需要是17及以上的版本。具体的可以看官网的说明。 Spring Cloud Alibaba版本说明 环境搭建 这里搭建的是一个聚合项目。项目结构如下: 父项目的pom.xm…...
js之数组遍历
for 可以用来遍历数组、字符串、类数组、DOM节点,可以更改原数组,可以使用break、continue 跳出循环 return 只能在函数内部使用 for(声明循环变量;判断循环条件;更新循环变量){循环体 }forEach 参数(当前元素&#x…...
极狐GitLab 16.9 重磅发布,快来 pick 你心仪的功能吧~【五】
GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 沿袭我们的月度发版机制,今天我们正式发布极狐GitL…...
如何在本地部署密码管理软件bitwarden并结合cpolar实现远程同步
文章目录 1. 拉取Bitwarden镜像2. 运行Bitwarden镜像3. 本地访问4. 群晖安装Cpolar5. 配置公网地址6. 公网访问Bitwarden7. 固定公网地址8. 浏览器密码托管设置 Bitwarden是一个密码管理器应用程序,适用于在多个设备和浏览器之间同步密码。自建密码管理软件bitwarde…...
DT DAY3 信号和槽
作业: 1> 思维导图 2> 使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 btn3 new QPushButton("按钮3",this);btn3->resize(ui->btn2->width(),ui->b…...
Spring、SpringBoot、SpringCloud三者的区别
Spring、Spring Boot 和 Spring Cloud 是构建企业级 Java 应用程序的不同层次的框架和工具。下面详细介绍它们之间的区别: 1. Spring框架: 概述: Spring 是一个全功能的企业级 Java 框架,提供了依赖注入、面向切面编程、事务管理…...
leetcode:46.全排列
1.什么是排列? 有顺序!! 2.树形结构: 使用used数组进行标记取过的元素,一个元素一个元素地进行取值,取完之后将used数组进行标记。 3.代码实现:(循环从i0开始,而不是…...
基于STM32的宠物箱温度湿度监控系统
基于STM32的宠物箱温度湿度监控系统 一、引言 随着人们生活水平的提高,养宠物已经成为越来越多人的选择。宠物作为家庭的一员,其生活环境和健康状况受到了广泛关注。温度和湿度是影响宠物舒适度和健康的重要因素之一。因此,开发一款能够实时监控宠物箱温度和湿度的系统具有…...
《高质量的C/C++编程规范》学习
目录 一、编程规范基础知识 1、头文件 2、程序的板式风格 3、命名规则 二、表达式和基本语句 1、运算符的优先级 2、复合表达式 3、if语句 4、循环语句的效率 5、for循环语句 6、switch语句 三、常量 1、#define和const比较 2、常量定义规则 四、函数设计 1、参…...
客户端订阅服务端事件的机制
一、场景描述 产业大脑平台是一个典型的审核系统,用户发布到平台的信息需要经过审核员审核后生效。 用户发布信息->审核员审核信息->用户信息生效,这一流程可能发生在用户的同一次登录周期内。为了使客户端能实时响应信息的状态变化,…...
pulsar入门介绍
概述 Pulsar 是一个多租户、高性能的服务器到服务器消息传递解决方案。Pulsar 最初由 Yahoo 开发,由 Apache 软件基金会管理。 特点 Pulsar 的主要功能如下: 原生支持 Pulsar 实例中的多个集群,可跨集群无缝地复制消息。非常低的发布和端…...
Leetcode 3047. Find the Largest Area of Square Inside Two Rectangles
Leetcode 3047. Find the Largest Area of Square Inside Two Rectangles 1. 解题思路2. 代码实现 题目链接:3047. Find the Largest Area of Square Inside Two Rectangles 1. 解题思路 这道题倒是没啥特别的思路,直接暴力求解就是了,因此…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
力扣-35.搜索插入位置
题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...
uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
