41.Python从入门到精通—格式化日期 获取某月日历 Time 模块 日历(Calendar)模块 其他相关模块和函数

41.Python从入门到精通—格式化日期 获取某月日历 Time 模块 日历(Calendar)模块 其他相关模块和函数

    • 格式化日期
    • 获取某月日历
    • Time 模块
    • 日历(Calendar)模块
    • 其他相关模块和函数

格式化日期

在 Python 中,可以使用 strftime() 方法将日期格式化为字符串。下面是一个简单的示例:

import datetimenow = datetime.datetime.now()
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print("格式化后的日期:", formatted_date)

输出结果类似于:

格式化后的日期: 2022-10-31 16:15:30

其中,strftime() 方法接受一个格式化字符串作为参数,用于指定输出的日期格式。常用的格式化字符包括:

%Y:四位数的年份(例如:2022)
%m:两位数的月份(01 到 12)
%d:两位数的日期(01 到 31)
%H:24 小时制的小时数(00 到 23)
%M:分钟数(00 到 59)
%S:秒数(00 到 59)

除了上述常用格式化字符外,还可以使用其他格式化字符,具体可以参考 Python 官方文档。

获取某月日历

在 Python 中,可以使用 calendar 模块的 month() 函数来获取指定月份的日历。month() 函数的语法如下:

calendar.month(year, month, w=0, l=0)

其中,year 和 month 是必需的参数,用于指定要获取的年份和月份。w 和 l 是可选参数,分别用于指定每个日期之间的间距和每周占据的行数。
以下是一个简单的例子,演示如何使用 month() 函数获取某月的日历:

import calendar# 获取2021年6月的日历
cal = calendar.month(2021, 6)# 打印日历
print(cal)

输出结果如下:

     June 2021
Mo Tu We Th Fr Sa Su1  2  3  4  5  67  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

在上面的例子中,我们首先使用 month() 函数获取 2021 年 6 月的日历,并将其赋值给变量 cal。然后,我们使用 print() 函数打印日历。输出结果显示了 2021 年 6 月的日历,包括每天的日期和星期几。

Time 模块

Python 的 time 模块提供了一些与时间相关的函数和变量,包括获取当前时间、休眠等待、时间转换等操作。下面是一些常用的函数和变量:

time():获取当前时间戳(从 1970 年 1 月 1 日开始的秒数)
sleep(seconds):休眠指定的秒数
localtime():获取当前本地时间的结构体
gmtime():获取当前世界标准时间的结构体
mktime(time_struct):将时间结构体转换为时间戳
strftime(format, time_struct):将时间结构体格式化为字符串

下面是一些示例代码:

获取当前时间戳

import timetimestamp = time.time()
print("当前时间戳:", timestamp)

休眠指定的秒数

import timeprint("开始休眠...")
time.sleep(3)
print("休眠结束")

获取当前本地时间的结构体

import timelocal_time = time.localtime()
print("当前本地时间:", local_time)

获取当前世界标准时间的结构体

import timegmt_time = time.gmtime()
print("当前世界标准时间:", gmt_time)

将时间结构体转换为时间戳

import timelocal_time = time.localtime()
timestamp = time.mktime(local_time)
print("时间戳:", timestamp)

将时间结构体格式化为字符串

import timelocal_time = time.localtime()
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print("格式化后的时间:", formatted_time)

这些只是 time 模块的一些常用操作,还有很多其他的功能,具体可以参考官方文档。

日历(Calendar)模块

日历(Calendar)模块是 Python 标准库中的一个模块,提供了一些与日期和时间相关的函数和类,可以用于处理日期和时间,例如获取指定月份的日历、计算两个日期之间的天数等等。
下面是一些常用的日历模块函数:

calendar.month(year, month[, w[, l]]):返回指定年份和月份的日历字符串。
calendar.calendar(year[, w[, l[, c]]]):返回指定年份的日历字符串。
calendar.isleap(year):判断指定年份是否为闰年,是则返回 True,否则返回 False。
calendar.leapdays(y1, y2):返回 y1 和 y2 之间(不包括 y2)的闰年数量。
calendar.weekday(year, month, day):返回指定日期的星期几,其中星期一到星期日分别对应 0 到 6。
calendar.day_name:一个包含星期一到星期日全名的元组。
calendar.month_name:一个包含月份全名的元组。

下面是一个简单的例子,演示如何使用 calendar 模块获取指定年份和月份的日历:

import calendar# 获取 2021 年 6 月的日历
cal = calendar.month(2021, 6)# 打印日历
print(cal)

输出结果如下:

    June 2021
Mo Tu We Th Fr Sa Su1  2  3  4  5  67  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

在上面的例子中,我们使用 month() 函数获取 2021 年 6 月的日历,并将其赋值给变量 cal。然后,我们使用 print() 函数打印日历。输出结果显示了 2021 年 6 月的日历,包括每天的日期和星期几。

其他相关模块和函数

除了 datetime 和 time 模块之外,Python 还提供了一些其他与时间相关的模块和函数,下面简单介绍一下:

calendar 模块:提供了一些与日历相关的函数和变量,例如获取指定年份和月份的日历、判断某一年是否为闰年等。
dateutil 模块:提供了一些高级的日期和时间处理函数,例如可以解析各种格式的日期字符串、进行日期的加减运算等。
pytz 模块:提供了时区相关的函数和变量,例如可以获取指定时区的当前时间、将本地时间转换为指定时区的时间等。

下面是一些示例代码:

使用 calendar 模块获取指定年份和月份的日历:

import calendarcal = calendar.month(2022, 11)
print("2022 年 11 月的日历:")
print(cal)

使用 dateutil 模块解析日期字符串:

from dateutil.parser import parsedate_str = '2022-11-01 12:30:00'
dt = parse(date_str)
print("解析后的日期:", dt)

使用 pytz 模块获取指定时区的当前时间:

import pytz
import datetimetz = pytz.timezone('Asia/Shanghai')
dt = datetime.datetime.now(tz)
print("上海的当前时间:", dt)

这些模块和函数可以让我们更方便地进行日期和时间的处理,具体使用方法可以参考官方文档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/803167.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

比较好玩的车子 高尔夫6

https://www.sohu.com/a/484063087_221273 四万多如愿收获手动挡高尔夫6,可靠性、经济性、操控性兼顾_搜狐汽车_搜狐网 2.基本上其他人也不知道到底是什么相关的车子信息

基于单片机和ICL7135多档位数字电压表设计

**单片机设计介绍,基于单片机和ICL7135多档位数字电压表设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机和ICL7135的多档位数字电压表设计是一个结合了硬件与软件技术的综合性项目。这种设计旨在实现一…

四种锁(互斥锁,递归锁,读写锁,自旋锁)

1.互斥锁(mutex):互斥锁是最常见的一种锁,用来保护共享资源的互斥访问。一次只有一个线程可以获得互斥锁。如果其他线程试图获得已经被锁定的互斥锁,他们将被阻塞,直到锁被释放 2.递归锁(recursive lock):递归锁是一种特殊的互斥锁,允许同一个线程多次获得同一个锁,而不会导致死…

[lesson12]经典问题解析一

经典问题解析一 关于const的疑问 const常量的判别准则 只有用字面量初始化的const常量才会进入符号表使用其他变量初始化的const常量仍然是只读变量被volatile修饰的const常量不会进入符号表 在编译期间不能直接确定初始值的const标识符,都被作为只读变量处理 con…

Pnpm + Turbo 搭建 Web Component Monorepo 组件库

技术选型 使用 Pnpm Turbo 搭建 Web Component Monorepo项目 stencil-component-ui 组件库 pnpm 作为包管理器Turborepo 作为构建系统Vitepress 管理文档 pnpm 技术 什么是 pnpm? 它有哪些优势? pnpm 跟 npm、yarn一样,都是用于管理Node包依赖的管…

iOS App Store审核要求与Flutter应用的兼容性分析

本文探讨了使用Flutter开发的iOS应用能否上架,以及上架的具体流程。苹果提供了App Store作为正式上架渠道,同时也有TestFlight供开发者进行内测。合规并通过审核后,Flutter应用可以顺利上架。但上架过程可能存在一些挑战,因此可能…

云岚到家项目

一.项目介绍 云岚到家项目是一个家政服务o2o平台,互联网家政是继打车、外卖后的又一个风口,创业者众多,比如:58到家,天鹅到家等,o2o(Online To Offline)是将线下商务的机会与互联网…

openharmony launcher 调研笔记(03)UI 数据装配

最近在看launcher,把自己调研的点做个笔记,持续修改更新中,个人笔记酌情参考。 桌面上半部分包含父子逻辑: Column() { PageDesktopLayout(); } PageDesktopLayout->GridSwiper->Swiper->SwiperPage 1.PageDe…

25.11 MySQL 视图

1. 常见的数据库对象 对象描述表(TABLE)存储数据的逻辑单元, 以行和列的形式存在, 列就是字段, 行就是记录.数据字典系统表, 存放数据库相关信息的表. 数据通常由数据库系统维护, 程序员通常不可修改, 只可查看.约束(CONSTRAINT)执行数据校验的规则, 用于保证数据完整性的规则…

Python面向对象详解

文章目录 类和继承变量保护类装饰器 类和继承 Python虽然以函数式著称,但在Python中,万物皆对象,其对面向对象编程是有着非常不错的支持的。类是面向对象的核心数据类型,下面代码就创建了一个Person类。 class Person:count 0d…

2024马来西亚电商选品博览会

2024马来西亚电商选品博览会 展会概况 展会名称:2024马来西亚电商选品博览会 主办单位:广东进出口商会 时间:2024.11.29-12.1 地点:马来西亚国际贸易展览中心(MITEC) 展览面积:10000平方米 展会简介 2024马来西亚跨境电商选…

包和final.Java

1,包 包就是文件夹。用来管理不同功能的Java类,方便后期代码的维护。 (1)包名的规则是什么? 公司域名反写报的作用,需要全部英文小写,见名知意。com.itheima.domain (2&#xff…

抓住风口,快速上手RAG应用开发!

免责声明~ 任何文章不要过度深思! 万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案」; 不要急着评判文章列出的观点,只需代入其中,适度…

蓝桥杯第十一届c++大学B组详解

目录 1.字符串排序 2.门牌制作 3.即约分数 4.蛇型填数 5.跑步锻炼 6.七段码 7.成绩统计 8.回文日期 9.字串分值和 10.平面切分 1.字符串排序 题目解析:这个题目真没搞懂。有会的大佬教我一下谢谢。 2.门牌制作 题目解析:出过超级多这类题目&am…

NumPy进阶(二)

2. NumPy进阶(二) 2.1 Numpy数组操作 2.1.1 添加元素 numpy.append 函数在数组的末尾添加值。 追加操作会分配整个数组,并把原来的数组复制到新数组中 注意: 插入的维度要保证所有数组的长度是相同的如果没有指定轴,数组会被扁平处理 ndarr…

第四百四十九回

文章目录 1. 知识回顾2. 使用方法3. 示例代码4. 经验与总结4.1 经验分享 我们在上一章回中介绍了"overlay_tooltip简介"相关的内容,本章回中将再谈flutter_launcher_icons包.闲话休提,让我们一起Talk Flutter吧。 1. 知识回顾 我们第四百一十…

docker安装nodejs

要在 Docker 中安装 Node.js,你可以使用官方提供的 Node.js 镜像。以下是在 Docker 中安装 Node.js 的基本步骤: 拉取 Node.js 镜像: docker pull node 运行 Node.js 镜像: docker run -it node 确认 Node.js 是否成功安装&…

教你如何玩转副业:开启编程副业新篇章

前言 在浩瀚的编程海洋中,C语言以其简洁、高效、贴近硬件的特性,成为无数程序员心中的“白月光”。作为一位程序员,如果你不仅掌握了这门语言的精髓,更渴望通过副业来挑战自我、实现价值。那么,如何用C语言开启你的副…

题目:取一个整数a从右端开始的4~7位。

题目:取一个整数a从右端开始的4~7位。 There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about being…

pta L1-010 比较大小

L1-010 比较大小 分数 10 全屏浏览 切换布局 作者 杨起帆 单位 浙大城市学院 本题要求将输入的任意3个整数从小到大输出。 输入格式: 输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一行中将3个整数从小到大输出,其间以“->”相连。…