如何在 Python 中获取当前日期和时间

2023-11-20

获取当前日期和时间是 Python 编程中的一项常见任务。有多种方法可以做到这一点,具体取决于您的需求和可用的库。在本文中,我们将探讨开发人员在 Python 中获取当前日期和时间的一些最常用方法,包括使用内置的 datetime 模块。

要了解更多信息,请访问我们的深入的Python日期时间教程。

在 Python 中获取当前日期和时间

要获取当前日期和时间,您可以使用`datetime.now()`函数,它返回一个日期时间对象,表示本地时区的当前日期和时间。

1
2
3
4
import datetime
 
当前日期时间 = datetime.datetime.now()
print(当前日期时间)

上面的脚本将输出以下内容:


2022-12-25 18:13:13.363653
  

要以特定方式格式化日期和时间,您可以使用`strftime()`datetime 对象的方法,它采用格式字符串作为参数。格式字符串指定日期和时间值的格式。

例如,要获取当前日期作为字符串`YYYY-MM-DD HH:MM:SS`格式,您可以使用`%Y-%m-%d %H:%M:%S`格式字符串:

1
2
3
4
5
import datetime
 
当前日期时间 = datetime.datetime.now()
当前日期 = 当前日期时间.strftime(“%Y-%m-%d %H:%M:%S”)
print(当前日期)

上面的脚本将输出以下内容:


2022-12-25 18:15:03
  

Python `datetime`模块类属性

Python 中的 datetime 模块提供了用于处理日期、时间和时间戳的类。主要类是 datetime,它表示单个时间点。

以下是 datetime 类的一些常见属性:

  • `year`:年份(四位数)
  • `month`:月份(1-12)
  • `day`:该月的第几天 (1-31)
  • `hour`:一天中的小时 (0-23)
  • `minute`:一小时中的分钟 (0-59)
  • `second`:分钟的第二个(0-59)
  • `microsecond`:秒的微秒(0-999999)
  • `tzinfo`:代表时区的对象

以下是创建日期时间对象并访问其属性的示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from datetime import datetime
 
dt = datetime(2022, 12, 31, 23, 59, 59)
## 取消下面的注释以获取当前日期和时间
#dt = 日期时间.now()
 
dt = datetime.now()
print(dt.year)  # 打印 2022
print(dt.month)  # 打印 12
print(dt.day)  # 打印 31
print(dt.hour)  # 打印 23
print(dt.minute)  # 打印 59
print(dt.second)  # 打印 59
print(dt.微秒)  # 打印 0
print(dt.tzinfo)  # 打印无

在 Python 中获取格式化的日期时间

要在 Python 中获取格式化的日期和时间字符串,您可以使用`strftime`的方法`datetime` class.

这是一个使用的例子`strftime`获取格式化的日期和时间字符串:

1
2
3
4
5
6
7
8
9
10
from datetime import datetime
 
# 创建一个日期时间对象
dt = datetime(2022, 12, 31, 23, 59, 59)
## 取消下面的注释以获取当前日期和时间
#dt = 日期时间.now()
 
# 使用strftime创建格式化字符串
格式化日期 = dt.strftime(“%Y-%m-%d %H:%M:%S”)
print(格式化日期)  # 打印“2022-12-31 23:59:59”

The `strftime`方法采用格式字符串作为参数,该参数指定如何格式化日期和时间。在上面的示例中,格式字符串“%Y-%m-%d %H:%M:%S”指定年份应格式化为四位数字 (`%Y`),月份为两位数 (`%m`),日期为两位数 (`%d`),小时为两位数 (`%H`),分钟为两位数 (`%M`),第二个为两位数(`%S`).

您可以使用不同的格式代码来自定义输出`strftime`根据您的喜好。例如,您可以使用`%A`获取星期几的全名,`%B`获取月份的全名,以及`%I`获取 12 小时格式的小时,并带有前导零(表示单位数小时)。

以下是 strftime 格式代码的更多示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from datetime import datetime
 
# 创建一个日期时间对象
dt = datetime(2022, 12, 31, 23, 59, 59)
## 取消下面的注释以获取当前日期和时间
#dt = 日期时间.now()
 
# 使用strftime创建格式化字符串
print(dt.strftime(“%Y-%m-%d %H:%M:%S”))  # 打印 2022-12-31 23:59:59
print(dt.strftime(“%Y/%m/%d”))  # 打印 2022/12/31
print(dt.strftime(“%H:%M:%S”))  # 打印 23:59:59
print(dt.strftime(“%I:%M:%S%p”))  # 打印 11:59:59 PM
print(dt.strftime(“%a,%b %d,%Y”))  # 打印 2022 年 12 月 31 日星期六
print(dt.strftime(“%a,%b %d,%Y %H:%M:%S”))  # 打印 2022 年 12 月 31 日星期六 23:59:59
print(dt.strftime(“%a %b %d %H:%M:%S %Y”))  # 打印 2022 年 12 月 31 日星期六 23:59:59
print(dt.strftime(“%A,%B%d,%Y%I:%M%p”))  # 打印 2022 年 12 月 31 日星期六晚上 11:59"

下面是可用于格式化 Python 脚本中的日期和时间输出的指令列表。

Directive Meaning
%a Locale’s abbreviated weekday name.
%A Locale’s full weekday name.
%b Locale’s abbreviated month name.
%B Locale’s full month name.
%c Locale’s appropriate date and time representation.
%d Day of the month as a decimal number [01,31].
%H Hour (24-hour clock) as a decimal number [00,23].
%I Hour (12-hour clock) as a decimal number [01,12].
%j Day of the year as a decimal number [001,366].
%m Month as a decimal number [01,12].
%M Minute as a decimal number [00,59].
%p Locale’s equivalent of either AM or PM.
%S Second as a decimal number [00,61].
%U Week number of the year (Sunday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Sunday are considered to be in week 0.
%w Weekday as a decimal number [0(Sunday),6].
%W Week number of the year (Monday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Monday are considered to be in week 0.
%x Locale’s appropriate date representation.
%X Locale’s appropriate time representation.
%y Year without century as a decimal number [00,99].
%Y Year with century as a decimal number.
%z Time zone offset indicating a positive or negative time difference from UTC/GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M represents decimal minute digits [-23:59, +23:59].
%Z Time zone name (no characters if no time zone exists).
%% A literal '%' character.

我希望这些示例能够帮助您了解如何在 Python 中获取当前日期和时间,以及如何在时区之间进行转换。

结论

总之,datetime 模块是一个方便而强大的工具,用于在 Python 中处理日期、时间和时间戳。您可以使用 datetime.now() 函数获取本地时区的当前日期和时间,或使用 datetime.utcnow() 函数获取 UTC 时区的当前日期和时间。您还可以使用 datetime() 构造函数为特定日期和时间创建日期时间对象。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Python 中获取当前日期和时间 的相关文章

  • Python、Tkinter、更改标签颜色

    有没有一种简单的方法来更改按钮中文本的颜色 I use button text input text here 更改按下后按钮文本的内容 是否存在类似的颜色变化 button color red Use the foreground设置按钮
  • Flask 和 uWSGI - 无法加载应用程序 0 (mountpoint='')(找不到可调用或导入错误)

    当我尝试使用 uWSGI 启动 Flask 时 出现以下错误 我是这样开始的 gt cd gt root localhost uwsgi socket 127 0 0 1 6000 file path to folder run py ca
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • 如何使用装饰器禁用某些功能的中间件?

    我想模仿的行为csrf exempt see here https docs djangoproject com en 1 11 ref csrf django views decorators csrf csrf exempt and h
  • Python 中的二进制缓冲区

    在Python中你可以使用StringIO https docs python org library struct html用于字符数据的类似文件的缓冲区 内存映射文件 https docs python org library mmap
  • NameError:名称“urllib”未定义”

    CODE import networkx as net from urllib request import urlopen def read lj friends g name fetch the friend list from Liv
  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • 欧洲中部时间 14 日 3 月 30 日星期五 00:00:00 至 日/月/年

    我尝试解析格式日期Fri Mar 30 00 00 00 CET 14至 日 月 年 这是我的代码 SimpleDateFormat formatter new SimpleDateFormat dd MM yyyy System out
  • Python:尝试检查有效的电话号码

    我正在尝试编写一个接受以下格式的电话号码的程序XXX XXX XXXX并将条目中的任何字母翻译为其相应的数字 现在我有了这个 如果启动不正确 它将允许您重新输入正确的数字 然后它会翻译输入的原始数字 我该如何解决 def main phon
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 在Python中重置生成器对象

    我有一个由多个yield 返回的生成器对象 准备调用该生成器是相当耗时的操作 这就是为什么我想多次重复使用生成器 y FunctionWithYield for x in y print x here must be something t
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 协方差矩阵的对角元素不是 1 pandas/numpy

    我有以下数据框 A B 0 1 5 1 2 6 2 3 7 3 4 8 我想计算协方差 a df iloc 0 values b df iloc 1 values 使用 numpy 作为 cov numpy cov a b I get ar
  • Python - 字典和列表相交

    给定以下数据结构 找出这两种数据结构共有的交集键的最有效方法是什么 dict1 2A 3A 4B list1 2A 4B Expected output 2A 4B 如果这也能产生更快的输出 我可以将列表 不是 dict1 组织到任何其他数
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject

随机推荐

  • 在 Linux 系统上安装 Nginx 的分步指南

    在不断发展的 Web 开发世界中 选择可靠且高效的 Web 服务器可以极大地影响 Web 应用程序和网站的成功 Nginx 因其高性能 开源设计和低资源消耗而成为许多开发人员的首选 这款功能强大的 Web 服务器软件以其稳定性 丰富的功能和
  • 如何移动完整的 Git 存储库

    Git 已成为软件开发中版本控制和协作的事实上的标准 有时 开发人员可能需要将整个 Git 存储库 包括其历史记录 分支和标签 移动到新位置或托管服务 在本综合指南中 我们将讨论无缝重新定位完整 Git 存储库而不会丢失任何关键数据或历史记
  • 如何在 Ubuntu 18.04(仿生)上安装 Ansible

    Ansible 是一种自动化工具 用于从单台计算机管理多个远程主机 它为您提供了针对大量远程主机的轻松配置 例如 您在多台机器上执行相同的任务 Ansible 为您提供了自动执行这些任务的选项 本教程将帮助您在 Ubuntu 18 04 B
  • Ubuntu 16.04 LTS 版本 – 此版本有哪些新增功能?

    Ubuntu 16 04 LTS Xenial Xerus Final 已发布 有很多更改 以下是此版本中可用的一些更改列表 使用以下教程从旧版本升级到 Ubuntu 16 04 如何将 Ubuntu 14 04 升级到 Ubuntu 16
  • 如何在 Debian 11/10 上安装 SVN 服务器

    SVN是由Apache基金会团队构建的开源版本控制系统 它可以帮助您跟踪文件和文件夹的集合 每当您更改 添加或删除使用 Subversion 管理的文件或文件夹时 您都会将这些更改提交到 Subversion 存储库 这会在您的存储库中创建
  • 在每月的最后一天安排 Cron 作业

    Cron 作业是系统管理中必不可少的自动化脚本 并且在类 Unix 操作系统中普遍存在 它们允许系统管理员和开发人员安排任务 作业 在特定时间运行 这对于数据库维护 系统更新和数据备份等任务非常有用 本文将深入探讨如何专门为该月的最后一天安
  • 在 Windows Server 2008 上为通配符 SSL 创建 CSR

    企业社会责任代表 证书签名请求 是一个加密的文本块 在将使用证书的服务器上生成 CSR 包含有关您的组织和域名 地点和国家 地区的信息 它还包含将包含在您的证书中的公钥 For creating CSR for wildcard ssl y
  • 检查素数的 Shell 脚本

    素数是大于 1 的自然数 除了 1 和它本身之外没有正因数 在本文中 我们将探讨如何编写 shell 脚本来检查给定数字是否为素数 该脚本将用 Bash 编写 Bash 是一种流行的 shell 语言 常用于 Linux 等类 Unix 操
  • 如何允许远程 MySQL 连接

    管理 MySQL 数据库并不总是意味着从托管它的同一服务器访问它 在许多情况下 尤其是随着分布式应用程序和云服务的兴起 您可能需要从远程位置连接到 MySQL 服务器 这是有关如何设置的指南 第 1 步 备份数据库 在对 MySQL 配置进
  • 初学者的初始服务器设置(Ubuntu 18.04 和 16.04 LTS)

    在本教程中 我们假设您已经全新安装了 Ubuntu Server 我们建议您的服务器使用 Ubuntu 的 LTS 版本 例如 Ubuntu 18 04 LTS 16 04 LTS 现在 安装 Ubuntu 服务器 18 04 16 04
  • Java 中的 System.out.println() 方法:初学者指南

    Java 是一种流行的面向对象编程语言 已广泛用于开发从桌面到移动和 Web 的各种应用程序 Java 编程中最基本的概念之一是打印到控制台 这就是System out println 方法就发挥作用了 在本文中 我们将提供初学者指南来理解
  • 如何在 Ubuntu 22.04 中添加交换空间

    交换空间是一种内存 可用作系统 RAM 的扩展 当您的系统物理内存不足并且需要卸载一些数据以继续平稳运行时 可以使用它 如果您使用的系统 RAM 有限 则增加交换空间以防止性能问题非常重要 在本文中 我们将讨论在 Ubuntu 22 04
  • 如何针对您的特定用例训练 ChatGPT

    ChatGPT是一个强大的人工智能语言模型 由OpenAI 它能够与用户进行自然语言对话 并具有广泛的潜在应用 包括客户服务 教育 营销和工作场所沟通 为了确保 ChatGPT 在您的特定用例中有效 根据相关数据训练模型至关重要 在本文中
  • 在 Bash 中使用参数和标志的综合指南

    Bash Bourne Again SHell 的缩写 是一个强大且多功能的命令行界面 广泛用于基于 Unix 的操作系统 编写 Bash 脚本时 您经常需要传递参数并使用标志来自定义脚本的行为 本文将提供有关在 Bash 脚本中有效利用参
  • Bash:追加到文件

    追加到文件意味着将新内容添加到现有文件的末尾 而不是覆盖文件的现有内容 当您追加到文件时 新内容将添加到文件末尾 并且文件的原始内容不会被修改或删除 当您想要向文件添加附加信息而不丢失现有数据时 这会很有用 在 Bash 中 有多种方法可以
  • 如何在 Apache 中禁用 ETag

    实体标签 ETag 是 Web 服务器和浏览器用来验证缓存组件的一种机制 服务器在最初发送组件时生成并向客户端发送 ETag 值 该值是表示组件的特定版本的令牌 对于后续请求 客户端会发回 ETag 值来检查资源是否发生变化 如果没有 服务
  • 如何在 CentOS/RHEL 7.6/6.9 和 Fedora 31/30 上安装 Apache/PHP 7

    您是否计划使用 Apache Web 服务器部署 PHP 应用程序 本教程将帮助您在 CentOS Redhat 和 Fedora 系统上安装 Apache Web 服务器和 PHP 推荐文章 适用于 Linux 的 LAMP 堆栈 Apa
  • Linux中的fallocate命令(为文件分配空间)

    The fallocate Linux 中的命令是用于为文件预分配空间的工具 它是创建文件并用零填充的传统方法的更快替代方法 该命令允许您快速为文件分配空间 而无需实际向文件系统写入任何数据 在这篇文章中 我们将解释什么 fallocate
  • 如何在 Python 中获取当前日期和时间

    获取当前日期和时间是 Python 编程中的一项常见任务 有多种方法可以做到这一点 具体取决于您的需求和可用的库 在本文中 我们将探讨开发人员在 Python 中获取当前日期和时间的一些最常用方法 包括使用内置的 datetime 模块 要
  • 如何启用 CSF 防火墙 Web UI

    ConfigServer 安全和防火墙 CSS 是适用于 Linux 系统的基于 iptables 的防火墙 在我们之前的教程中阅读了CSF在Linux系统上的安装教程 CSF 还提供内置 Web UI 用于从 Web 界面管理防火墙 在本