【python】time

news2024/11/18 2:36:08

在这里插入图片描述

文章目录

  • 【calendar】
    • 是否闰年
    • 星期英文缩写
    • 今天星期几
    • 打印日历
  • 【datetime】
    • 今天星期几
  • 【time】
    • 当前时间
  • 【pandas】
    • 当前时间
    • 文件修改的时间
  • 【日历】


【calendar】

是否闰年

import calendar
print(calendar.isleap(2000))

out

True

星期英文缩写

print(calendar.weekheader(4))   

out

Mon  Tue  Wed  Thu  Fri  Sat  Sun 

今天星期几

print(calendar.weekday(2023, 9, 11)) # index, 0~6
print(calendar.day_name[calendar.weekday(2023, 9, 11)])

out

0
Monday

打印日历

print(calendar.prmonth(2023, 9))  

output

   September 2023
Mo Tu We Th Fr Sa Su
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
None

今天星期几,对应英文

import calendar
print(calendar.weekday(2022, 3, 24)) # 0~6

3
Thursday

【datetime】

今天星期几

# weekday
import datetime
week_list = ["星期一","星期二","星期三","星期四","星期五","星期六","星期七"]
print(week_list[datetime.date(2022, 3, 24).weekday()])  # 返回 0~6

星期四

import datetime
print(datetime.date(2022,3,24).isoweekday()) # 返回 1~7

4

import datetime
print(datetime.date(2022,3,24).strftime("%A"))
print(datetime.date(2022,3,24).strftime("%a"))

Thursday
Thu


import pandas as pd
from datetime import datetime

df = pd.DataFrame({
    "name": ["张三", "李四", "王五"],
    "date": [datetime(2022,3,22), datetime(2022,3,23), datetime(2022,3,24)]
})
print(df,"\n")

df["week_num1"] = df["date"].dt.dayofweek
df["week_num2"] = df["date"].dt.weekday
df["week_name"] = df["date"].dt.day_name()

print(df)

output

  name       date
0   张三 2022-03-22
1   李四 2022-03-23
2   王五 2022-03-24 

  name       date  week_num1  week_num2  week_name
0   张三 2022-03-22          1          1    Tuesday
1   李四 2022-03-23          2          2  Wednesday
2   王五 2022-03-24          3          3   Thursday

【time】

肝了3天,整理了80个Python DateTime 例子,必须收藏!

当前时间

import time
t = time.localtime()
print (time.asctime(t))

output

Tue May 24 11:50:38 2022

gmtime 和 strftime

from time import gmtime,strftime
print(strftime("%a, %d %b %Y %H:%M:%S", gmtime()))
print(strftime("%A", gmtime())) # 星期
print(strftime("%D", gmtime())) # 日期
print(strftime("%B", gmtime())) # 月份
print(strftime("%y", gmtime())) # 年份
 
# Convert seconds into GMT date
print(strftime("%a, %d %b %Y %H:%M:%S", gmtime(1)))
print(strftime("%a, %d %b %Y %H:%M:%S", gmtime(123456789)))
Tue, 24 May 2022 11:50:38
Tuesday
05/24/22
May
22
Thu, 01 Jan 1970 00:00:01
Thu, 29 Nov 1973 21:33:09

【pandas】

当前时间

import pandas as pd
print(pd.datetime.now())
print(pd.datetime.now().date())
print(pd.datetime.now().year)
print(pd.datetime.now().month)
print(pd.datetime.now().day)
print(pd.datetime.now().hour)
print(pd.datetime.now().minute)
print(pd.datetime.now().second)
print(pd.datetime.now().microsecond)

output

2022-05-24 11:52:59.556948
2022-05-24
2022
5
24
11
52
59
557247

文件修改的时间

import os
import time

pth = "D://model/"

for roots, dirs, files in os.walk(pth):
    for file in files:
        obsolute_path = os.path.join(roots, file)
        mtime = os.stat(obsolute_path).st_mtime
        file_modify_time = time.strftime('%Y-%m-%d,%H:%M:%S', time.localtime(mtime))
        print("{i} 修改时间是 {j}".format(i=obsolute_path, j=file_modify_time))

【日历】

STXINGKA.TTF 是华文行楷
参考 用Python自动化生成倒计时图片

from PIL import Image, ImageDraw, ImageFont
import os

for i in range(1, 22):
    # 创建图像,设置图像大小及颜色
    im = Image.new('RGBA', (1000, 1800), (166, 12, 4, 255))
    draw = ImageDraw.Draw(im)
    # 设置本次使用的字体
    fontsFolder = 'C:\'Windows\Fonts'
    font1 = ImageFont.truetype(os.path.join(fontsFolder, 'STXINGKA.TTF'), 420)
    font2 = ImageFont.truetype(os.path.join(fontsFolder, 'STXINGKA.TTF'), 40)
    # 计算各文本的放置位置
    txtSize_1 = draw.textsize('距 离 除 夕 夜', font2)
    pos_x_1 = (1000 - txtSize_1[0]) / 2
    txtSize_2 = draw.textsize('还 有', font2)
    pos_x_2 = (1000 - txtSize_2[0]) / 2
    txtSize_3 = draw.textsize('天', font2)
    pos_x_3 = (1000 - txtSize_3[0]) / 2
    txtSize_4 = draw.textsize('不 是 年 味 越 来 越 少', font2)
    pos_x_4 = (1000 - txtSize_4[0]) / 2
    txtSize_5 = draw.textsize('而 是 我 们 都 长 大 了', font2)
    pos_x_5 = (1000 - txtSize_5[0]) / 2
    # 设置文本放置位置,居中
    draw.text((pos_x_1, 200), '距 离 除 夕 夜', fill=(217, 217, 217, 255), font=font2)
    draw.text((pos_x_2, 300), '还 有', fill=(217, 217, 217, 255), font=font2)
    draw.text((pos_x_3, 1050), '天', fill=(217, 217, 217, 255), font=font2)
    draw.text((pos_x_4, 1350), '不 是 年 味 越 来 越 少', fill=(137, 183, 109, 255), font=font2)
    draw.text((pos_x_5, 1440), '而 是 我 们 都 长 大 了', fill=(137, 183, 109, 255), font=font2)
    # 绘制线框
    draw.line([(20, 20), (980, 20), (980, 1780), (20, 1780), (20, 20)], fill=(217, 217, 217, 255), width=5)
    # 设置变化的文本属性
    txtSize_6 = draw.textsize(str(i), font1)
    pos_x_6 = (1000 - txtSize_6[0]) / 2
    draw.text((pos_x_6, 500), str(i), fill=(137, 183, 109, 255), font=font1)
    # im.show()
    # 保存图像
    filename = 'day' + str(i) + '.png'
    im.save(filename)

生成了 1-21 天,部分节选如下
在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

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

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

相关文章

Zookeeper经典应用场景实战

1. Zookeeper Java客户端实战 ZooKeeper应用的开发主要通过Java客户端API去连接和操作ZooKeeper集群。可供选择的Java客户端API有: ZooKeeper官方的Java客户端API。第三方的Java客户端API,比如Curator。 ZooKeeper官方的客户端API提供了基本的操作。例…

Gin框架中的Cookie怎么搞(会话控制)

参考地址 设置和获取 Cookie | Gin Web Framework (gin-gonic.com)https://gin-gonic.com/zh-cn/docs/examples/cookie/ 什么是cookie cookie在互联网上随处可见,具体体现如下: 保持登录状态 保存浏览器的历史记录 大数据随心配,按喜好推送讯息 购物网站加入购物车 都会…

内存概念,进程运行的基本原理(指令,逻辑地址与物理地址的转换,程序运行的过程)

1.内存 内存可存放数据。 程序执行前需要先放到内存中才能被CPU处理:缓和cPU与硬盘之间的速度矛盾。 1.内存地址 内存地址从0开始,每个地址对应个存储单元。 2.存储单元 内存中也有一个一个的“小房间”,每个小房间就是一个“存储单元”…

RS485通讯方式-详解

RS485是美国电子工业协会(EIA)在1983年批准的一个新的平衡传输标准,也称作差分。 RS485总线通常采用两线间的电压差为2V到6V表示逻辑1,以两线间的电压差为-2V到-6V表示逻辑0。 这种总线以其差分传输方式而闻名,发送端在…

C语言常见题目 过关斩将(2)基础好❓你可知道有关 “素数“ 的三连问❓

我的个人主页:☆光之梦☆的博客_CSDN博客-C语言基础语法(超详细)领域博主 欢迎各位 👍点赞 ⭐收藏 📝评论 特别标注:本博主将会长期更新c语言的语法知识,初学c语言的朋友们,可以收藏…

从0开始学go第七天

gin获取表单from中的数据 模拟简单登录页面&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>login</title> </head><body><form action"/login" method&q…

SLAM从入门到精通(launch文件学习)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 大家应该还记得我们在一开始学习ros的时候&#xff0c;如果需要启动一个节点的话&#xff0c;需要首先打开roscore&#xff0c;接着用rosrun打开对…

Java进击框架:Spring-Bean初始化过程(五)

Java进击框架&#xff1a;Spring-Bean初始化过程&#xff08;五&#xff09; 前言源码初始化配置加载Bean加载Bean对象加载Bean切面 Bean工厂后置处理器注册Bean后置处理器初始化消息源初始化应用程序事件多播器注册监听器完成Bean工厂初始化Bean初始化完成刷新应用上下文创建完…

VSCODE+PHP8.2配置踩坑记录

VSCODEPHP8.2配置踩坑记录 – WhiteNights Site 我配置过的最恶心的环境之一&#xff1a;windows上的php。另一个是我centos服务器上的php。 进不了断点 端口配置和xdebug的安装 这个应该是最常见的问题了。从网上下载完php并解压到本地&#xff0c;打开vscode&#xff0c;安装…

前端 | 前端工程化

文章目录 前端工程化1. Vue项目创建2. Vue项目目录结构3. vue项目开发 前端工程化 1. Vue项目创建 安装插件vue-cli npm install -g vue/cli命令行创建 Vue 项目 vue create vue-project(项目名称)图形化界面创建 VUe 项目 vue ui图形化界面如下&#xff1a; 选择功能&…

如何在edge浏览器中给PDF添加文字批注

我用的edge浏览器是目前最新版的&#xff08;一般自动更新到最新版&#xff09; 最近&#xff0c;我喜欢用edge浏览器查看PDF&#xff0c;节省电脑资源&#xff0c;快捷且方便。 但edge对PDF的标注种类较少&#xff0c;主要是划线和涂色&#xff0c;文字批注功能尚未出现在工具…

【TB作品】基于MSP430G2553单片机的超声波测距与报警系统,原理图,PCB

功能&#xff1a; 1 超声波测距显示 2 按键设置报警上下限 3 蜂鸣器报警 原理图&#xff1a; PCB样式&#xff1a; 实物&#xff1a; 代码&#xff1a; https://github.com/xddun/blog_code_search

PDMS二次开发(二十一)——关于Pipeline工具生成螺栓材料表的计算思路

目录 1.简述2.螺栓元件的数据2.1 A1A等级中螺栓元件库2.2 A1A等级中法兰元件库2.3 A1A要指定螺栓等级2.4 螺栓等级数据解析 3.问题解释 1.简述 因为有好几个网友问到螺栓材料表生成报错的问题&#xff0c;我初步分析可能还是因为螺栓元件库的问题&#xff0c;我这里对Pipeline…

Android约束布局ConstraintLayout流式Flow

Android约束布局ConstraintLayout流式Flow <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.…

Hadoop分布式集群搭建教程

目录 前言环境准备一、创建虚拟机二、虚拟机网络配置三、克隆虚拟机四、Linux系统配置五、Hadoop的部署配置六、Hadoop集群的启动 前言 大数据课程需要搭建Hadoop分布式集群&#xff0c;在这里记录一下搭建过程 环境准备 搭建Haoop分布式集群所需环境&#xff1a; VMware&a…

Redis之缓存一致性

Redis之缓存一致性 1 缓存更新策略1.1 内存淘汰1.2 过期删除1.3 主动更新1.4 三种缓存更新策略的对比 2 更新缓存的两种方式3 缓存更新策略的实现方式3.1 先更新DB&#xff0c;后更新缓存3.2 先更新DB&#xff0c;后删除缓存3.3 先更新缓存&#xff0c;后更新DB3.4 先删除缓存&…

unity2022版本 实现手机虚拟操作杆

简介 在许多移动游戏中&#xff0c;虚拟操纵杆是一个重要的用户界面元素&#xff0c;用于控制角色或物体的移动。本文将介绍如何在Unity中实现虚拟操纵杆&#xff0c;提供了一段用于移动控制的代码。我们将讨论不同类型的虚拟操纵杆&#xff0c;如固定和跟随&#xff0c;以及如…

lv8 嵌入式开发-网络编程开发 16 多路复用poll函数

目录 1 多路复用的多种实现方式 2 poll 2.1 poll 函数应用 3 epoll 函数族&#xff08;效率最高&#xff09; 3.1 epoll_create 创建epoll句柄 3.2 epoll_ctl epoll句柄控制接口 3.3 epoll_wait 等待 epoll 文件描述符上的 I/O 事件 3.4 epoll 函数应用 1 多路复用的多…

数据结构学习笔记——数据结构概论

目录 一、数据与数据元素二、数据类型和抽象数据类型三、数据结构的定义&#xff08;一&#xff09;逻辑结构&#xff08;二&#xff09;存储结构&#xff08;物理结构&#xff09;1、顺序存储结构2、链式存储结构3、索引存储结构4、散列存储结构 &#xff08;三&#xff09;数…

Python 自定义包和模块随机生成6位验证码(详解版)

一、新建一个包&#xff08;两种方法&#xff09; 方法一&#xff1a;先新建一个空目录命名为"小功能包"&#xff0c;然后在新建的目录下新建一个空__init__.py&#xff08;目的是声明当前目录是一个包&#xff09; 方法二&#xff1a;直接在PyCharm用鼠标依次点击F…