python每日一练(5)
🌈write in front🌈
🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.
🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如需转载还请通知⚠️
📝个人主页:Aileen_0v0🧸—CSDN博客
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝
📣系列专栏:Aileen_0v0🧸的PYTHON学习系列专栏——CSDN博客
🗼我的格言:"没有罗马,那就自己创造罗马~"
目录
(1)完数🦌
(2)海伦公式求三角形面积🐻
(3)判断某年某天🐣
Python中的datetime模块🍭
Python中的内置函数-map()函数🍰
lambda表达式🍫
.days属性在datetime里的使用🍪
(4)斐波那切数列🍥
方法1-递归🍮
方法2-非递归🍨
索引🍵
我最喜欢的表情包🐒
我的自创表情包🐵
我喜欢它或者使用它的背后故事🐖
(1)完数🦌
一个数如恰好等于除了它以外的因子之和这个数就称为“完数”。
编程序找出1000以内的所有完数,(6是一个"完数",它的因子是1,2,3)。
# 完数
# 一个数如恰好等于除了它以外的因子之和这个数就称为“完数”。
# 编程序找出1000以内的所有完数,(6是一个"完数",它的因子是1,2,3)。#找到1000以内所有的数for i in range (1,1000):sum = 0#内层循环找所有因子for j in range (1,i):if i % j ==0:#将所有符合条件的因子加起来sum += jif sum == i:print(f"{i}是完数")
(2)海伦公式求三角形面积🐻
海伦公式是利用三角形的三条边的边长直接求三角形面积的公式
# 海伦公式求三角形面积
# 海伦公式是利用三角形的三条边的边长直接求三角形面积的公式
#p = (a + b + c )/2
#S = (p(p-a)(p-b)(p-c))**0.5
import math
a = int(input("请输入边长1:"))
b = int(input("请输入边长2:"))
c = int(input("请输入边长3:"))
p = (a+b+c)/2
# S = (p*(p-a)*(p-b)*(p-c))**0.5
S = math.sqrt(p*(p-a)*(p-b)*(p-c))
#%.nf %m 表示对数据m的结果保留n位小数
print("三角形的面积是%.2f" %S)
在Python中,我们可以使用格式化字符串来设置保留小数位数。具体方法是在格式化字符串中使用%来指定小数位数。例如,要将数字3.1415926保留2位小数并打印出来,可以使用以下代码:
num = 3.1415926 print("%.2f" % num)
输出结果为:
3.14
其中,%.2f中的.2表示保留2位小数,而f表示要格式化的数据类型为浮点类型。除了使用%来格式化字符串外,还可以使用format()方法来实现相同的效果,例如:
num = 3.1415926 print("{:.2f}".format(num))
输出结果也为:
3.14
(3)判断某年某天🐣
输入某年某月某日,判断这一天是这一年的第几天。
# (3)判断某年某天
# 输入某年某月某日,判断这一天是这一年的第几天。
import datetime
year,month,day = map(int,input().split())
#创建时间对象
Yuandan = datetime.datetime(year,1,1)
now = datetime.datetime(year,month,day)
#由于 1月31 - 1月1 = 30 而我们1月一共有31天 所以后面还要+1
print((now-Yuandan).days + 1)
Python中的
datetime
模块🍭Python中的
datetime
模块是处理日期和时间的常用模块之一,它提供了许多有用的类和函数,可以方便地进行日期和时间的处理和计算。下面是一些
datetime
模块的常见用法:获取当前日期和时间
import datetime# 获取当前日期和时间 now = datetime.datetime.now() print(now) # 2021-08-20 14:35:42.590500
获取指定日期和时间
import datetime# 获取指定日期和时间 dt = datetime.datetime(2021, 8, 20, 14, 35, 0) print(dt) # 2021-08-20 14:35:00
将字符串转换为日期和时间
import datetime# 将字符串转换为日期和时间 dt_str = '2021-08-20 14:35:00' dt = datetime.datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S') print(dt) # 2021-08-20 14:35:00
将日期和时间转换为字符串
import datetime# 将日期和时间转换为字符串 dt = datetime.datetime(2021, 8, 20, 14, 35, 0) dt_str = dt.strftime('%Y-%m-%d %H:%M:%S') print(dt_str) # 2021-08-20 14:35:00
计算时间差
import datetime# 计算时间差 dt1 = datetime.datetime(2021, 8, 20, 14, 35, 0) dt2 = datetime.datetime(2021, 8, 21, 14, 35, 0) delta = dt2 - dt1 print(delta.days) # 1 print(delta.seconds) # 0
更改日期和时间
import datetime# 更改日期和时间 dt = datetime.datetime(2021, 8, 20, 14, 35, 0) # 向后推迟1天 dt += datetime.timedelta(days=1) print(dt) # 2021-08-21 14:35:00
这些是
datetime
模块的一些基础用法,它还有很多其他的功能,如对时区的支持,时间格式化等等。通过datetime
模块的学习,可以更方便地进行日期和时间的处理。
Python中的内置函数-
map()
函数🍰在Python中,
map()
函数是一个内置函数,用于对可迭代对象中的每个元素应用给定函数,并返回一个新的可迭代对象,其中包含每个元素的计算结果。
map()
函数的语法如下:map(function, iterable, ...)
其中:
function
是要应用的函数。iterable
是要迭代的序列。
map()
函数的工作原理是将function
依次作用于iterable
的每个元素,并返回一个列表或迭代器,其中包含每个元素被function
处理后的结果。下面是几个使用
map()
函数的例子:# 将列表中所有元素转换为字符串类型 nums = [1, 2, 3, 4, 5] nums_str = list(map(str, nums)) print(nums_str) # ['1', '2', '3', '4', '5']# 对列表中所有元素求平方 nums = [1, 2, 3, 4, 5] squares = list(map(lambda x: x**2, nums)) print(squares) # [1, 4, 9, 16, 25]# 将两个列表中的元素一一相加 nums1 = [1, 2, 3, 4, 5] nums2 = [10, 20, 30, 40, 50] sums = list(map(lambda x, y: x + y, nums1, nums2)) print(sums) # [11, 22, 33, 44, 55]
在上面的例子中,
map()
函数和lambda
表达式的结合是非常常见的用法,这样可以在不定义函数的情况下实现灵活的操作。
lambda表达式🍫
lambda表达式是一种用于创建匿名函数的语法。它非常适合那些只需短时间使用的函数,因为这样可以避免创建新的函数名称,简化代码。
lambda表达式的语法如下:
lambda arguments : expression
其中,arguments是参数列表,可以为空或者包含一个或多个参数;
expression是一个表达式,通常是由参数组成的表达式,用于计算返回值。
可以使用lambda表达式来定义一个简单的函数,例如:
# 定义一个函数,计算两个参数相加的结果 def add(x, y):return x + y# 使用lambda表达式定义同样的函数 add = lambda x, y: x + y
使用lambda表达式定义的函数可以像普通函数一样使用,例如:
# 调用add函数 result = add(1, 2) print(result)# 使用lambda表达式替代add函数 add = lambda x, y: x + y result = add(1, 2) print(result)
输出结果为:
3 3
使用lambda表达式可以使代码更加简洁,特别是当你需要一个临时函数时,它会很有用。
.days属性在datetime里的使用🍪
在Python中,.days是一个日期时间(datetime)对象的属性,用于获取两个日期之间的天数差。
例如,假设有两个日期对象d1和d2,我们可以使用以下代码计算它们之间的天数差:
delta = d2 - d1 print(delta.days)
此代码将输出这两个日期之间的天数差。
除此之外,.days还可以用于处理时间间隔(timedelta)对象。时间间隔对象表示两个日期或时间之间的差异。和日期时间对象一样,时间间隔对象也具有.days属性,可以用于获取时间间隔的总天数。例如:
from datetime import timedeltadelta = timedelta(days=7) print(delta.days) # 输出7
(4)斐波那切数列🍥
又称兔子数列,指的是这样一个数列: 1、1、2、3、5、8、13、21、34、.编写程序找出第n个项
这道题有两种方法:
方法1-递归🍮
递归--->不懂或忘记的小伙伴可以跳转进行学习👉🔗:http://t.csdnimg.cn/qGFmw
首先思考:对于第n个元素
递推条件:f(n-1)+f(n-2)
结束条件: n ==1 或 n == 2 --->1
# (4)斐波那切数列
# 又称兔子数列,指的是这样一个数列: 1、1、2、3、5、8、13、21、34、.编写程序找出第n个项
def fib(n):if n == 1 or n ==2:return 1;else:return fib( n - 1 ) + fib( n - 2 )
#打印出第六个元素的值
print(fib(6))
注意:
这种递归算法的时间复杂度为 O(2^n),因为每个数都要递归地计算出它的前两个数的和。因此,当 n 值较大时,性能会变得非常低下。
方法2-非递归🍨
#非递归
n = 6
fib = [1,1]
for i in range (2,n+1):fib.append(fib[i-1]+fib[i-2])
#打印整个列表
print(fib)
#利用索引单独打印第六个元素
print(fib[n-1])
索引🍵
在Python中,列表索引指的是列表中每个元素的位置。
列表中的第一个元素的索引为0,第二个元素的索引为1,以此类推。
可以使用方括号[]来访问列表中的元素。
例如,如果我们有一个名为mylist的列表,我们可以通过以下方式访问列表中的元素:
mylist = [10, 20, 30, 40, 50] print(mylist[0]) # 输出:10 print(mylist[2]) # 输出:30 print(mylist[-1]) # 输出:50,-1表示最后一个元素的索引
我们还可以使用分片(slicing)来访问列表中的多个元素。例如,如果我们想访问列表中的前三个元素,我们可以使用以下代码:
mylist = [10, 20, 30, 40, 50] print(mylist[0:3]) # 输出:[10, 20, 30]
此外,我们还可以使用一些其他的内置函数,如len()来获取列表的长度,例如:
mylist = [10, 20, 30, 40, 50] print(len(mylist)) # 输出:5
我最喜欢的表情包🐒
我的自创表情包🐵
提示:请至少分享5个表情包
我喜欢它或者使用它的背后故事🐖
之所以喜欢那个表情包,因为懂的都懂,厉害的程序员的发量是什么样子的
有点冒犯大佬们,在此表示歉意,但是我还是要向你们学习的🙈
此外我喜欢的animal 是pig 因为我的朋友经常睡得跟死猪一样,这是我叫他起床的方式
自创表情包都是我自己通过写博客想出来的,为了调侃一下,也是为了帮助大家更好的记忆知识点啦~
相关文章:

python每日一练(5)
🌈write in front🌈 🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流. 🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如…...

经典循环命题:百钱百鸡
翁五钱一只,母三钱,小鸡三只一钱;百钱百鸡百鸡花百钱。 (本笔记适合能熟练应用for循环、会使if条件分支语句、能格式化字符输出的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:…...

IDEA使用模板创建webapp时,web.xml文件版本过低的一种解决方法
创建完成后的web.xml 文件,版本太低 <!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Appl…...

在Openresty中使用lua语言向请求浏览器返回请求头User-Agent里边的值
可以参考《Linux学习之Ubuntu 20.04在https://openresty.org下载源码安装Openresty 1.19.3.1,使用systemd管理OpenResty服务》安装Openresty。 然后把下边的内容写入到openresty配置文件/usr/local/openresty/nginx/conf/nginx.conf(根据实际情况进行选…...

Hive面试常见基础问题
以下是一些Hive面试问题和答案: Hive是什么? 答:Hive是一个开源的数据仓库工具,用于处理和分析大规模结构化数据。它能够创建、修改和查询表结构,支持多种数据类型和查询操作,同时提供数据汇总和数据查询的…...

设计模式 - 观察者模式
目录 一. 前言 二. 实现 三. 优缺点 一. 前言 观察者模式属于行为型模式。在程序设计中,观察者模式通常由两个对象组成:观察者和被观察者。当被观察者状态发生改变时,它会通知所有的观察者对象,使他们能够及时做出响应…...

【自动驾驶】PETR/PETRv2/StreamPETR论文分析
1.PETR PETR网络结构如下,主要包括image-backbone, 3D Coordinates Generator, 3D Position Encoder, transformer Decoder 1.1 Images Backbone 采用resnet 或者 vovNet,下面的x表示concatenate 1.2 3D Coordinates Generator 坐标生成跟lss类似,假…...

GPT实战系列-Baichuan2本地化部署实战方案
目录 一、百川2(Baichuan 2)模型介绍 二、资源需求 模型文件类型 推理的GPU资源要求 模型获取途径 国外: Huggingface 国内:ModelScope 三、部署安装 配置环境 安装过程...

用netty实现简易rpc
文章目录 rpc介绍:rpc调用流程:代码: rpc介绍: RPC是远程过程调用(Remote Procedure Call)的缩写形式。SAP系统RPC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接…...

【计算机网络】第三章课后习题答案
习题目录: 【3-01】数据链路(即逻辑链路)与链路(即物理链路)有何区别?"链路接通了"与"数据链路接通了"的区别何在? 【3-02】数据链路层中的链路控制包括哪些功能…...

cesium 地图蒙版遮罩效果
示例代码 <!DOCTYPE html> <html lang"en"><head><!-- Use correct character set. --><meta charset"utf-8" /><!-- Tell IE to use the latest, best version. --><meta http-equiv"X-UA-Compatible"…...

根据前序遍历结果构造二叉搜索树
根据前序遍历结果构造二叉搜索树-力扣 1008 题 题目说明: 1.preorder 长度>1 2.preorder 没有重复值 直接插入 解题思路: 数组索引[0]的位置为根节点,与根节点开始比较,比根节点小的就往左边插,比根节点大的就往右…...

微信小程序指定某个元素强制重新渲染
之前写过 vue强制让某个元素重新渲染 利用了vue中的 v-if会控制元素是否挂载 以及 $nextTick 等待响应式更改生效再执行的特性 小程序也都有类似的方法 我们可以这样 wxml <view wx:if"{{min true}}">你好</view>用 wx:if 作用和v-if是一样的 js th…...

国际教材概念基础
各种区别 缩写 A-LEVEL(大学预科):General Certificate of Education Advanced Level AP:Advanced Placement(美国地区:美高AP) GCSE:General Certificate of Secondary Educati…...

2023全国大学生软件测试大赛开发者测试练习题满分答案(PairingHeap2023)
2023全国大学生软件测试大赛开发者测试练习题满分答案(PairingHeap2023) 题目详情题解代码(直接全部复制到test类中即可) 提示:该题只需要分支覆盖得分即可,不需要变异得分 题目详情 题解代码(…...

介绍一下tokens
“Tokens” 是一个计算机科学和自然语言处理领域常用的术语,通常用于表示文本中的最小单位。在这个上下文中,我将解释一下 “tokens” 的含义以及它们在不同领域中的用途: 自然语言处理 (NLP): 在自然语言处理中,“token” 是指文…...

机器学习、深度学习相关的项目集合【自行选择即可】
【基于YOLOv5的瓷砖瑕疵检测系统】 YOLOv5是一种目标检测算法,它是YOLO(You Only Look Once)系列模型的进化版本。YOLOv5是由Ultralytics开发的,基于一阶段目标检测的概念。其目标是在保持高准确率的同时提高目标检测的速度和效率…...

百面机器学习书刊纠错
百面机器学习书刊纠错 P243 LSTM内部结构图 2023-10-7 输入门的输出 和 candidate的输出 进行按元素乘积之后 要和 遗忘门*上一层的cell state之积进行相加。...

vue2安装cesium并使用
一、安装 1.安装cesium npm install cesium1.95.0 -S 2.安装所需 npm install copy-webpack-plugin10.2.4 -D 二、配置 1.配置vue.config.js vue 中引入cesium 需要用copy-webpack-plugin 把一些文件拷贝到打包目录 // vue.config.js const CopyWebpackPlugin require…...

基于Docker来部署Nacos的注册中心
基于Docker来部署Nacos的注册中心 准备MySQL数据库表nacos.sql,用来存储Nacos的数据。 最终表结构如下: 在本地nacos/custom.env文件中,有一个MYSQL_SERVICE_HOST也就是mysql地址,需要修改为你自己的虚拟机IP地址: …...

黑马JVM总结(三十一)
(1)类加载器-概述 启动类加载器-扩展类类加载器-应用程序类加载器 双亲委派模式: 类加载器,加载类的顺序是先依次请问父级有没有加载,没有加载自己才加载,扩展类加载器在getParent的时候为null 以为Boots…...

【C++】list基本接口+手撕 list(详解迭代器)
父母就像迭代器,封装了他们的脆弱...... 手撕list目录: 一、list的常用接口及其使用 1.1list 构造函数与增删查改 1.2list 特殊接口 1.3list 排序性能分析 二、list 迭代器实现(重点难点) 关于迭代器的引入知识:…...

PowerShell pnpm : 无法加载文件 C:\Users\lenovo\AppData\Roaming\npm\pnpm.ps1
1、右键点击【开始】,打开Windows PowerShell(管理员) 2、运行命令set-ExecutionPolicy RemoteSigned 3、根据提示,输入A,回车 此时管理员权限已经可以运行pnpm 如果vsCode还报该错误 继续输入 4、右键点击【开始】,打…...

mysql面试题33:Blob和text有什么区别
该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:Blob和text有什么区别 Blob和text是数据库中存储大文本数据的两种数据类型&#…...

docker版jxTMS使用指南:4.6版升级内容
4.6版jxTMS已经发布,升级了多个重大能力,本系列文章将逐一进行讲解。 docker版本的使用,请查看:docker版jxTMS使用指南 4.0版jxTMS的说明,请查看:4.0版升级内容 4.2版jxTMS的说明,请查看&…...

java最优建树算法
建树算法 树的数据结构 {"code": "1111","name": "","parentcode": "0000","children": null }, {"code": "2222","name": "","parentcode": &q…...

mysql面试题30:什么是数据库连接池、应用程序和数据库建立连接的过程、为什么需要数据库连接池、你知道哪些数据库连接池
该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:什么是数据库连接池? 数据库连接池是一种用于管理和复用数据库连接的技术。它是在应用程序和数据库之间建立一组数据库连接,并以池的形式存储起…...

【Vue】vscode格式刷插件Prettier以及配置项~~保姆级教程
文章目录 前言一、下载插件二、在项目内创建配置文件1.在根目录创建,src同级2.写入配置3.每个字段含义 总结 前言 vscode格式刷,有太多插件了,但是每个的使用,换行都不一样。 这里我推荐一个很多人都推荐了的Prettier 一、下载插…...

.NET 8 中的调试增强功能
作者:James Newton-King 排版:Alan Wang 开发人员喜欢 .NET 强大且用户友好的调试体验。您可以在您选择的 IDE 中设置断点,启动已经附加上调试器的程序,逐步执行代码并查看 .NET 应用程序的状态。 在 .NET 8 中,我们致…...

1310. 数三角形
知识点:(a, b)与(c, d)两点连线上点的个数为:gcd(x, y) 1(包括端点) (设横坐标差的绝对值为x, 纵坐标差的绝对值为y ) 思路:先算出选三个点的所有情况,再减去三点共线的情况 共线的斜率为0时特判 当共线…...