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. 解题思路 这道题倒是没啥特别的思路,直接暴力求解就是了,因此…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释
以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块࿰…...