python学习-综合练习四(最大公约数、最小公倍数、生成日历、递归调用、字符串)
文章目录
- 最大公约数
- 最小公倍数
- 生成日历
- 递归调用
- 字符串
说明:本篇博文的知识点大部分来自 Python3 实例
最大公约数
求最大公约数的逻辑比较简单,这里直接上代码:
def maxCommDiv(val1, val2):if val1 > val2:smaller = val2else:smaller = val1commDiv = 0for item in range(1, smaller + 1):if (val1 % item == 0) and (val2 % item == 0):commDiv = itemreturn commDivnum1 = int(input("请输入第一个数字: "))
num2 = int(input("请输入第二个数字: "))print(num1, ",", num2, "的最大公约数是:", maxCommDiv(num1, num2))
运行结果:
最小公倍数
def minCommMult(val1, val2):if val1 > val2:greater = val2else:greater = val1while True:if (greater % val1 == 0) and (greater % val2 == 0):commMult = greaterbreakgreater += 1return commMultnum1 = int(input("请输入第一个数字: "))
num2 = int(input("请输入第二个数字: "))print(num1, ",", num2, "的最小公倍数是:", minCommMult(num1, num2))
运行结果:
生成日历
关键在于引入日历模块
import calendar# 输入指定年月
yy = int(input("输入年份: "))
mm = int(input("输入月份: "))# 显示日历
print(calendar.month(yy, mm))
运行结果:
进入calendar.py文件,能够看到文件的所有函数。可以自己选择不同的函数进行调用,每个函数都有对应的说明。
比如我调用calendar函数:
print(calendar.calendar(2020))
会把2020年的所有月份,以及日期都打印出来。
递归调用
这里使用一个简单的递归作为示例。并且对逻辑进行讲解。
先看代码:
def printNum(val1):if val1 <= 0:returnprint(val1)val1 -= 1printNum(val1)try:num = int(input("请输入一个正整数:"))if num <= 0:print("请输入一个正整数")printNum(num)
except ValueError:print("请输入一个正整数")
我这里定义了一个函数printNum,把输入的正整数从大到小的方式打印出来。
使用递归是为了更好的理解递归。
使用递归:首先需要设置退出条件,否则会行成死循环
我这里设置了输入参数小于等于0,则return
打印val1,让val1减一,然后再次调用自身,把减一后的val1传入,这就行成了递归。当多次调用,val1减一,逐步到了0,触发退出条件,然后函数执行完成。
运行结果:
字符串
以下就是一些函数的使用,我把用到的一些函数截图列出来了,感兴趣的小伙伴自己看看噢。
python学习-综合练习四(最大公约数、最小公倍数、生成日历、递归调用、字符串)相关推荐
- python学习之第四课时--运算符
python学习之第四课时--运算符 运算符 1.算数运算 运算符 描述 实例 a=10,b=20 = 加,两个对象相加 a+b输出30 - 减,一个数减去另一个数 a-b输出-10 * 乘,两个数相 ...
- python学习[第十四篇] 文件的输入与输出
python学习[第十四篇] 文件的输入与输出 标准文件类型 一般来说只要程序一执行,就会访问3个文件: 标准输入(键盘) stdin 标准输出(显示器缓冲区) stdout 默认输出到屏幕 标准错误 ...
- Python学习笔记第四十八天(NumPy 矩阵库(Matrix))
Python学习笔记第四十八天 NumPy 矩阵库(Matrix) 转置矩阵 matlib.empty() numpy.matlib.ones() numpy.matlib.eye() numpy.m ...
- OpenCV学习笔记(四十六)——FAST特征点检测features2D OpenCV学习笔记(四十七)——VideoWriter生成视频流highgui OpenCV学习笔记(四十八)——PCA算
OpenCV学习笔记(四十六)--FAST特征点检测features2D 特征点检测和匹配是计算机视觉中一个很有用的技术.在物体检测,视觉跟踪,三维常年关键等领域都有很广泛的应用.这一次先介绍特征点检 ...
- python学习(第四节课)
一.判断条件 判断符 基本使用 1<2 ,返回值为True 1>2 ,返回值为False 1==2,返回值为True 连续使用 1<2<3,返回值为True 1>-1&l ...
- Python学习笔记(四)Python函数
(三)python 函数 一 函数简介 在日常开发中有很多代码需要在多处使用 , 为了提高代码的复用性可以把代码需要复用的代码以函数的形式进行封装 . 二. 函数的调用 Python中内置了很多的函数 ...
- Python学习笔记(四)
为什么80%的码农都做不了架构师?>>> 主要学习内容,语法控制结构(顺序,选择,循环).Python语言中代码的执行一般是按代码的顺序执行的,但是这个顺序不是一定的,我们可以 ...
- python学习笔记(四)字典(dict)
创建 dict 方法 1: 创建一个空的 dict,这个空 dict,可以在以后向里面加东西用. >>> mydict = {} >>> mydict {} 不要小 ...
- Python 学习日记 第四天
日常鸡汤: 我们大部分人努力的程度,还不到拼天赋的时候 一.列表的简介: 列表是python的基础数据类型之一,它是以 [ ] 括起来,每个元素用 逗号(,)隔开,而且可以存放各种数据类型,列表具有索 ...
最新文章
- java 产生随机数
- php回调函数如何执行顺序,PHP回调函数调用方式
- 使用PHP创建一个REST API(译)
- G少爷上证技术分析 8月31日
- “哪里有人喜欢孤独,不过是害怕失望罢了”———村上春树《东尼泷谷》观后感...
- .net中即时消息发送的实现
- 数字格式化输出NumberFormat
- 关于动作捕捉动画一些记录
- 修改注册表禁用谷歌浏览器提示保存密码
- java课程设计 博客园_201521123098 JAVA课程设计
- CentOS 7 搭建DHCP中继服务
- 看网易的lofter,预测轻博客的未来
- 中华好诗词大学季第二季(四)
- 基于51单片机的贪吃蛇小游戏
- 随机搜索(Random Searching)算法
- Windows 在目录中搜索哪个文件中有指定字符串
- 电力监控系统如何在锡林郭勒配电工程中采集相关遥测、遥信和SOE等数据完成监视、控制和预警?
- 我为什么不是清华的学生
- Arcgis ToolBox学习之三——Tabulate Intersection
- 自己做个U盘多功能工具
热门文章
- 如何打印出 SAP Spartacus 调用 OCC API 消费的所有 endpoint
- TypeScript 里的 class field
- SAP Spartacus category在breadcrumb里显示不正确的一个问题
- SAP Spartacus HTTP请求的错误处理机制
- SAP Spartacus routing参数的权重和HTTP校验逻辑
- 92行JavaScript代码实现的类似Excel外观的UI
- SAP CRM pricing read的实现逻辑
- 如何免费申请并使用SAP Marketing Cloud测试系统
- 如何在Marketing Cloud的弹出UI窗口里添加扩展字段
- 介绍一个办法查TREX search的log