当前位置: 首页 > news >正文

【Python每日十题菜鸟版--第二天】

菜鸟实例

  • 🍉前言
  • 1.判断奇偶性
  • 2.判断闰年
  • 3. 获取最大值最小值
  • 4. 质数(素数)的判断
  • 5.阶乘
    • 方法一
    • 方法二
  • 6.九九乘法表
  • 7.斐波那契数列
    • 方法一 :循环计算法(一般方法)
    • 方法二: 递归
  • 8.阿姆斯特朗数
  • 9. 十进制与其他进制相互转换
    • 十进制转其他进制
    • 其他进制转十进制
  • 10.ASCII码与对应字符相互转换

🍉前言

这些题都是在菜鸟官网上的练习题,
对于刚学python的新手来说十分的适合,
可以加强和巩固我们的基础。
嘿嘿 一起噶油吧!

1.判断奇偶性

while True:try:num = int(input("请输入一个数字判断其奇偶性:"))breakexcept ValueError :passif num%2 ==0 :print(f"{num}是偶数")
else:print(f"{num}是奇数")

2.判断闰年

# 判断闰年
while True:try:year = int(input("请输入想要判断的年份:"))print(year)breakexcept:passif(year%4)==0:if (year % 100) == 0:if (year % 400) == 0:print(f"{year}是闰年")else:print("f{year}不是闰年")else:print("f{year}不是闰年")
else:print("f{year}不是闰年")

3. 获取最大值最小值

# 当然我们队元组,列表,字符串,数字,字典等都可以通过遍历的方式去获取最大和最小值
# 但是为了获取最大最小值去遍历貌似没有必要
# 有现成的方法
# 同理获取最小值也是
print(max(1, 2, 3), type(max(1, 2, 3)))  # 3 <class 'int'>
print(max('1', '2', '3'), type(max('1', '2', '3')))  # 3 <class 'str'>
print(max('a', 'b', 'c'), type(max('a', 'b', 'c')))  # c <class 'str'># 也可以对元组
print(max(1, 2), type((1, 2)))  # 2 <class 'tuple'>
print(max[1, 2], type([1, 2]))  # TypeError

4. 质数(素数)的判断

# 素数有一个特性:就是出1和自己之外没有其他的除数能被整除
# 该算法的思想就是遍历这个素数范围内的数是否都能被其整除
import mathwhile True:try:num = int(input("请输入一个正整数:"))breakexcept (ValueError, TypeError):passif num == 1:print(f"{num}是个素数")elif num > 1:# 遍历这个数范围内的所有数,判断其能否被这个数整数# 使用开根号可以减少循环次数,为什么呢?# 假如测试1024 那么遍历到16时算的16 * 64可以得到,然后超过了32之后(32 *32 =1024),# 下一次可以被1024整除的就是64,算的64 * 16 = 1024 。和前面那个式子是一样的 ,所以没有必要num_sqrt = math.floor(num ** 0.5) + 1for v in range(2, num_sqrt):if (num % v == 0):print(f"这个数{num}不是素数")print(f"可以由{v} * {num / v} = {num}得到")print(v)elif (num % v != 0 and v+1 == num_sqrt):print(f"这个数{num}是素数")

5.阶乘

方法一

while True:try:num = int(input("请输入你想要求的数的阶乘:"))breakexcept (ValueError,TypeError):passfactorial_sum = 1
if num < 0:print(f"{num}没有阶乘")
elif num == 1:factorial_sum = 1
else:while (num > 1):factorial_sum *= numnum -= 1
print(factorial_sum)

方法二

import mathprint(math.factorial(6)) # 720

6.九九乘法表

# 两个循环嵌套,注意空行和空格
# 使用制表符\t会保留一段空格 使输出更加美观
# 使用end="" 是为了行可以在一行输出 
# 最后那一句print()十分的关键 不然就乱了
# 九九乘法表
for index in range(1, 10):for rang in range(1, index+1):print(f"{index} * {rang} = {index * rang}\t", end="")print()

7.斐波那契数列

方法一 :循环计算法(一般方法)

# 这个数列是前两项的和等于第三项
# 当输入的项数控制循环次数
# 一轮循环之后 需要更新第一项和第二项的值
while True:try:num = int(input("你需要几项:"))breakexcept ValueError:passnum1 = 1
num2 = 2
count = 2
if num <= 0:print("请输入一个正整数")
elif num ==1 :print("菲波那切数列:", num1)
else :print("菲波那切数列:")print(num1,"",num2,end=" ")while count< num:nth = num1 +num2print(nth,end=" ")#更新值num1 = num2num2 = nthcount += 1

方法二: 递归

# 递归法
while True:try:num = int(input("你需要几项:"))breakexcept ValueError:passdef fbnq(num):num1 = 1num2 = 2if num <= 0:print("请输入一个正整数")return 0elif num == 1:return 1elif num == 2:return 2else:return fbnq(num-1) + fbnq(num - 2)# fbnq这个函数负责递归计算 # fbnq_list这个函数负责遍历输出
def fbnq_list(n):for i in range(1, n+1):print(fbnq(i), end=" ")fbnq_list(num)

8.阿姆斯特朗数


import math
def is_amusitel_number(num):# 判断这个数是否是阿姆斯特朗数num_length = len(str(num))# print(f"该数字的长度为{num_length}")# 加个判断 如果小于十的数 ,他的十位数是为0的if num < 10:Hundredth_place = 0Ten = 0the_unit = num# 加个判断 如果小于一百的数 ,他的百位数是为0的if num < 100:Hundredth_place = 0Ten = math.floor((num%100)/10)the_unit = (num%100)%10if num < 1000:# 求这个数的个,十,百千等位the_unit = (num%100)%10Ten = math.floor((num%100)/10)Hundredth_place = math.floor(num/100) # 带入公式 进行计算if the_unit ** num_length + Ten ** num_length + Hundredth_place ** num_length == num :return Truefor num in range(1,1000):if is_amusitel_number(num):print(f"该数{num}是阿姆斯特朗数")else:pass

9. 十进制与其他进制相互转换

十进制转其他进制

# 在Number中提供了现有的方法
while True:try:num = int(input("请输入你要转换的值:"))breakexcept (ValueError, TypeError):passprint(f"十进制{num} 转换成二进制为{bin(num)}")  # 0b10111
print(f"十进制{num} 转换成十六进制为{hex(num)}")  # 0x17
print(f"十进制{num} 转换成十六进制为{oct(num)}")  # 0o27

其他进制转十进制

while True:try:num = round(int(input("请输入你要转换的值:")))# 判断num是不是整数,如果是小数 的话会报错 ,# 我们就将他四舍五入处理# 因为int函数第一个参数是字符串,所以我需要将整数转换成字符串num = str(num)print(f"{num}是十六进制,转换成十进制后是{int(num, 16)}")print(f"{num}是八进制,转换成十进制后是{int(num, 8)}")breakexcept (ValueError, TypeError):print(f"{num}不是一个八进制,请输入八进制数")breakwhile True:try:print(f"{num}是八进制,转换成十进制后是{int(num, 8)}")print(f"{num}是二进制,转换成十进制后是{int(num, 2)}")breakexcept (ValueError, TypeError):print(f"{num}不是一个二进制,请输入一个包含0和1的二进制数")break

10.ASCII码与对应字符相互转换

# 用户输入ASCII码,并将输入的数字转为整型
c = input("请输入一个字符:")
while True:try:# 传入一个ascll码,该码是整数a = int(input("请输入一个ASCII码: "))breakexcept (ValueError, TypeError):print("请输入一个正整数")# 将字符转换成对应的十进制整数
print(c + " 的ASCII 码为", ord(c))# 将一个数字转换成对应的字符
print(a, " 对应的字符为", chr(a))

🍉 学无止境,都看到这了,点个赞关注支持一下呗!嘿嘿(* ̄︶ ̄)

相关文章:

【Python每日十题菜鸟版--第二天】

菜鸟实例 &#x1f349;前言1.判断奇偶性2.判断闰年3. 获取最大值最小值4. 质数&#xff08;素数&#xff09;的判断5.阶乘方法一方法二 6.九九乘法表7.斐波那契数列方法一 &#xff1a;循环计算法&#xff08;一般方法&#xff09;方法二&#xff1a; 递归 8.阿姆斯特朗数9. 十…...

拓扑排序模板及例题

概念 一个有向无环图必然存在一个拓扑序列与之对应。 流程&#xff1a; 先将所有入度为0的节点入队将队列中的节点出队&#xff0c;出队序列就是对应拓扑序。对于弹出的节点x&#xff0c;遍历x所有出度y&#xff0c;对y进行入读减一操作检查入度减一之后的节点y&#xff0c;…...

linux查看nginx安装路径

linux查看nginx安装路径 有几种方法可以查看nginx的安装路径: 使用which命令: which nginx这个命令会返回nginx的二进制文件路径,一般也是安装路径。 查看nginx的进程,得到安装路径: ps aux | grep nginx输出结果中有nginx的进程路径,这个也是安装路径。 在nginx的配置文…...

【生态环境保护】绿水青山就是金山银山——生态环保篇

环保是一个持续性的话题&#xff0c;不仅仅是在国内&#xff0c;整个世界都是一个命运共同体从城市垃圾分类&#xff0c;到农村/村镇污水治理&#xff0c;城乡一体化和因地制宜的实施方式&#xff0c;是我们一直在探索的。 从余村到全国&#xff0c;从中国到世界&#xff0c;“…...

配置Docker镜像加速器-Docker命令-Docker 容器的数据卷

Docker架构 docker进程&#xff08;daemon&#xff09; 镜像&#xff08;Image&#xff09;&#xff1a;Docker 镜像&#xff08;Image&#xff09;&#xff0c;就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件…...

ARM开发调试方法

用户选用ARM处理器开发嵌入式系统时&#xff0c;选择合适的开发工具可以加快开发进度&#xff0c;节省开发成本。因此一套含有编辑软件、编译软件、汇编软件、链接软件、调试软件、工程管理及函数库的集成开发环境&#xff08;IDE&#xff09;一般来说是必不可少的&#xff0c;…...

【Spring篇】IOC/DI注解开发

&#x1f353;系列专栏:Spring系列专栏 &#x1f349;个人主页:个人主页 目录 一、IOC/DI注解开发 1.注解开发定义bean 2.纯注解开发模式 1.思路分析 2.实现步骤 3.注解开发bean作用范围与生命周期管理 1.环境准备 2.Bean的作用范围 3.Bean的生命周期 4.注解开发依赖…...

1 Unix基础知识

1.1 登录 1.1 登录名 登录Unix系统时&#xff0c;要先输入登录名&#xff0c;然后再输入口令。系统再其口令文件&#xff08;/etc/password文件&#xff09;查看登录名。口令文件中的登录项由7个以冒号分隔的字段组成&#xff1a;登录名&#xff0c;加密口令&#xff0c;数字用…...

【翻译一下官方文档】认识uniCloud云数据库(基础篇)

我将用图文的形式&#xff0c;把市面上优质的课程加以自己的理解&#xff0c;详细的把&#xff1a;创建一个uniCloud的应用&#xff0c;其中的每一步记录出来&#xff0c;方便大家写项目中&#xff0c;做到哪一步不会了&#xff0c;可以轻松翻看文章进行查阅。&#xff08;此文…...

全局解释器锁 GIL

问题 你已经听说过全局解释器锁 GIL&#xff0c;担心它会影响到多线程程序的执行性能。 解决方案 尽管 Python 完全支持多线程编程&#xff0c;但是解释器的 C 语言实现部分在完全并行执行时并不是线程安全的。 实际上&#xff0c;解释器被一个全局解释器锁保护着&#xff…...

github 下载文件加速 https://moeyy.cn/gh-proxy/

GitHub文件链接带不带协议头都可以&#xff0c;支持release、archive以及文件&#xff0c;右键复制出来的链接都是符合标准的。 注意&#xff0c;不支持项目文件夹&#xff0c;请使用Git。 分支源码&#xff1a;https://github.moeyy.xyz/https://github.com/moeyy/project/arc…...

第五章 资源包使用

游戏开发中会大量使用模型文件&#xff0c;图片文件&#xff0c;这些资源都需要事先导入到项目中去。导入的方式非常简单&#xff0c;将这些文件直接复制到项目中的Assets目录下即可。Unity 会在文件添加到 Assets 文件夹时自动检测到这些文件并同步显示在Project视图中。 Uni…...

Linux od命令

Linux od命令用于输出文件内容。 od指令会读取所给予的文件的内容&#xff0c;并将其内容以八进制字码呈现出来。 语法 od [-abcdfhilovx][-A <字码基数>][-j <字符数目>][-N <字符数目>][-s <字符串字符数>][-t <输出格式>][-w <每列字符…...

【15】SCI易中期刊推荐——电子电气 | 仪器仪表(中科院4区)

💖💖>>>加勒比海带<<<💖💖 🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀🍀 ✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨ 📚📚>>>人工智能 | 计算机视觉 | 深度学习Tr…...

基于PaddleServing的串联部署 ocr 识别模型

要点&#xff1a; 使用paddleserving服务 1 首先需要安装PaddleServing部署相关的环境 PaddleServing是PaddlePaddle推出的一种高性能、易扩展、高可用的机器学习服务框架。PaddleOCR中使用PaddleServing主要是为了将训练好的OCR模型部署到线上环境&#xff0c;提供API服务&a…...

java OutputStream学习

1.概要 OutputStream位于java.io&#xff0c;它在Java 实现的IO类库中是一个很基础的抽象类。在层级上&#xff0c;是所有字节输出流类的父类&#xff0c;在功能上&#xff0c;表示接受字节并把它们输出。 2.实现类及子类简介 OutputStream有诸多子类&#xff1a; ByteAr…...

java 上传文件生成二进制流文件

最近在项目中遇到一个问题&#xff1a;需要将上传的文件生成输出流&#xff0c;然后将输出流转换为输入流上传到oss。 -------------------------------------------导出代码实现---------------------------------------------------------- ByteArrayOutputStream baos nu…...

质量小议22 -- 多少分合适

60分万岁~&#xff1f;&#xff1f;&#xff1f;&#xff01;&#xff01;&#xff01; 如果用分数评价质量&#xff0c;多少分合适&#xff1f;60&#xff0c;70&#xff0c;80...还是100&#xff0c;或者 120 对于质量的提升&#xff0c;是雪中送炭&#xff0c;还是锦上添…...

变频器参数设定说明

使用默贝克MT110-0R4-S2B实现下面的练习题&#xff1a; 1、先恢复出厂设置&#xff0c;再输入电机参数&#xff0c;选择静态调谐 2、两种运行模式&#xff1a;多段速&#xff08;8段&#xff09;和简易PLC&#xff08;4段&#xff09; 3、面板启停&#xff0c;运行模式通过外部…...

实用调试技巧

目录&#xff1a; 1.什么是bug&#xff1f; 2.调试是什么&#xff1f;有多重要&#xff1f; 3.debug和release的介绍 4.Windows环境调试介绍 5.一些调试的实例 6.如何写出好(易于调试)的代码 7.编程常见的错误 1.什么是bug&#xff1f; bug--->臭虫、虫子。 为什么含…...

谁是液冷行业真龙头?疯狂的液冷技术!

“人工智能领域AIGC”、“ChatGPT”、“数据特区”、“东数西算”、“数据中心”&#xff0c;可以说是2023年最热的概念&#xff0c;算力提升的背后&#xff0c;处理器的功耗越来越高&#xff0c;想发挥出处理器的最高性能&#xff0c;需要更高的散热效率。 算力井喷之下&…...

自动化运维工具之Ansible

目录 一、自动化运维 1、通过xshell自动化运维 2、Ansible简介 3、Ansible特点及优势 4、Ansible核心程序 5、Ansible工作原理及流程 6、部署Ansible自动化运维工具 7、Ansible常用模块 (1) ansible命令行模块 (2) command模块 (3) shell模块 (4) cron模块 (5) us…...

霍兰德人格分析雷达图

雷达图 Radar Chart 雷达图是多特性直观展示的重要方式 问题分析 霍兰德认为&#xff1a;人格兴趣与职业之间应有一种内在的对应关系 人格分类&#xff1a;研究型、艺术型、社会型、企业型、传统型、现实性 职业&#xff1a;工程师、实验员、艺术家、推销员、记事员、社会工…...

《Odoo开发者模式必知必会》—— 缘起

Odoo作为业界优秀的开源商务软件&#xff0c;在全球范围内拥有广泛的使用者。在领英国际&#xff0c;可以搜索到全球很多国家都有大量odoo人才需求的招聘信息。在国内&#xff0c;虽然已经有为数不少的企业&#xff0c;他们或者已经使用odoo&#xff0c;或者正在了解odoo&#…...

Java8的Options介绍

Java8引入了一个名为 Options 的新类&#xff0c;它是一个容器&#xff0c;可以保存单个值或根本不保存任何值。Optional目的是提供一种更优雅的方式来处理 null 值&#xff0c;这通常会导致NullPointerException。在这篇博客文章中&#xff0c;我们将探索如何在 Java8中使用 O…...

SpringBoot 多数据源及事务解决方案

1. 背景 一个主库和N个应用库的数据源&#xff0c;并且会同时操作主库和应用库的数据&#xff0c;需要解决以下两个问题&#xff1a; 如何动态管理多个数据源以及切换&#xff1f; 如何保证多数据源场景下的数据一致性(事务)&#xff1f; 本文主要探讨这两个问题的解决方案…...

tcpdump使用教程

一、概述 tcpdump是一个功能强大的&#xff0c;用于抓取网络数据包的命令行工具&#xff0c;与带界面的Wireshark一样&#xff0c;基于libpcap库构建。这篇文章主要介绍tcpdump的使用。关于如何使用tcpdump的资料中&#xff0c;最有用的就是tcpdump的两个手册。 tcpdump使用手…...

Zynq-7000、FMQL45T900的GPIO控制(五)---linux应用层配置GPIO输出控制

上文中详细阐述了对应原理图MIO/EMIO的编号&#xff0c;怎么计算获取linux下gpio的编号 本文涉及C代码上传&#xff0c;下载地址 Zynq-7000、FMQL45T900的GPIO控制c语言代码资源-CSDN文库 本文详细记录一下针对获取到gpio的编号&#xff0c;进行配置输出模式&#xff0c;并进…...

带你搞懂人工智能、机器学习和深度学习!

不少高校的小伙伴找我聊入门人工智能该怎么起步&#xff0c;如何快速入门&#xff0c;多长时间能成长为中高级工程师&#xff08;聊下来感觉大多数学生党就是焦虑&#xff0c;毕业即失业&#xff0c;尤其现在就业环境这么差&#xff09;&#xff0c;但聊到最后&#xff0c;很多…...

Android 11.0 framework中Launcher的启动流程分析

1.前言 在11.0的系统rom定制化开发中,在rom定制过程中,在对于开发默认Launcher功能,解决开机动画后黑屏,了解fallbackhome机制等等 对于launcher的启动流程来说很重要,接下来就来分析下launcher的启动流程 2.framework中Launcher的启动流程分析的核心类 frameworks/ba…...