Python时间戳与时间字符串互相转换实例代码

下面是Python时间戳与时间字符串互相转换的攻略。

时间戳与时间字符串说明

在Python中,时间戳是指自1970年1月1日零时(UTC)起到某个时间点所经过的秒数,是表示时间的一种方式。而时间字符串则是指格式化后的时间字符串,如“2021-12-31 23:59:59”,也是表示时间的一种方式。

时间戳和时间字符串之间的转换是常见的操作,例如在爬虫中,网页给出的时间通常是时间戳,我们需要将其转换为可读的时间字符串。下面分别介绍时间戳和时间字符串的构造方式以及互相转换的方法。

时间戳构造

时间戳可以通过Python标准库中的time模块的time()函数进行获取,示例如下:

import time

# 获取当前时间戳
timestamp = time.time()

# 打印时间戳
print(timestamp)

输出结果类似:

1644550173.7249982

其中小数部分是毫秒级别的精度。

时间字符串构造

时间字符串可以通过格式化方式实现,Python标准库中的datetime模块提供了丰富的时间格式化方法,示例如下:

import datetime

# 获取当前时间
now = datetime.datetime.now()

# 将当前时间转换为格式化字符串
time_str = now.strftime('%Y-%m-%d %H:%M:%S')

# 打印时间字符串
print(time_str)

输出结果类似:

2022-02-11 16:22:06

其中'%Y-%m-%d %H:%M:%S'是时间格式化字符串,具体含义如下:

  • %Y:四位数的年份
  • %m:两位数的月份(补零)
  • %d:两位数的日(补零)
  • %H:24小时制的小时数(补零)
  • %M:分钟数(补零)
  • %S:秒数(补零)

时间戳转时间字符串

时间戳转换为时间字符串需要使用时间格式化方法,示例如下:

import time
import datetime

# 时间戳
timestamp = 1644550173.7249982

# 时间戳转换为datetime格式
dt_obj = datetime.datetime.fromtimestamp(timestamp)

# 将时间转换为格式化字符串
time_str = dt_obj.strftime('%Y-%m-%d %H:%M:%S')

# 打印时间字符串
print(time_str)

输出结果类似:

2022-02-11 08:22:53

其中fromtimestamp()函数将时间戳转换为datetime对象,再使用strftime()函数将datetime对象转换为格式化字符串,可以自定义时间格式化字符串实现任意格式的时间输出。

时间字符串转时间戳

时间字符串转换为时间戳需要使用time模块中的mktime()函数,示例如下:

import time
import datetime

# 时间字符串
time_str = '2022-02-11 08:22:53'

# 将时间字符串转换为datetime格式
dt_obj = datetime.datetime.strptime(time_str, '%Y-%m-%d %H:%M:%S')

# 将datetime对象转换为时间戳
timestamp = time.mktime(dt_obj.timetuple())

# 打印时间戳
print(timestamp)

输出结果类似:

1644552173.0

其中strptime()函数将时间字符串转换为datetime对象,mktime()函数将datetime对象转换为时间戳。需要注意的是,timetuple()函数转换为时间元组时会忽略对象的微秒部分,因此时间戳中的小数部分会被忽略。

总结

本文介绍了Python时间戳与时间字符串互相转换的方法,包括时间戳和时间字符串的构造,以及转换的示例代码。通过掌握时间戳和时间字符串的转换,可以轻松处理时间相关的问题,提高编程效率。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python时间戳与时间字符串互相转换实例代码 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • 使用pymysql写入中文的问题

    在使用pymysql库向数据库中写入中文时,有时候会出现中文乱码等问题,下面是一些解决方法以及相应的代码示例。 设置数据库编码 首先,在创建数据库连接时,需要在db参数中添加?charset=utf8,告诉数据库使用utf8编码。如: import pymysql conn = pymysql.connect(host=’localhost’, port=3…

    python 2023年5月20日
    00
  • Python使用正则表达式实现爬虫数据抽取

    以下是Python使用正则表达式实现爬虫数据抽取的完整攻略: 步骤1:导入re和requests模块 在Python中使用正则表达式进行爬虫数据抽取需要导入re和requests模块。re模块用于处理正则表达式,requests模块用于发送HTTP请求和获取响应。可以使用以下代码导入: import re import requests 步骤2:发送HTTP…

    python 2023年5月14日
    00
  • python 如何读取列表中字典的value值

    下面是Python如何读取列表中字典的value值的完整攻略。 读取列表中字典的value值 在Python中,列表和字典都是非常常见的数据类型。如果有一个列表包含多个字典,需要读取其中某个字典的value值,该如何实现呢?这里我们提供两种方式。 方法一:通过下标访问 在Python中,我们可以通过下标访问列表或者字典中的值。如果要访问列表中的第 i 个字典…

    python 2023年5月13日
    00
  • Python进阶篇之多线程爬取网页

    Python进阶篇之多线程爬取网页 简介 本篇文章主要介绍如何利用多线程爬取网页,并通过两个示例来讲解多线程爬取网页的具体操作和注意事项。 多线程爬取网页 多线程是指在一个进程内,启动多个线程来并行执行不同的任务。在爬取网页的过程中,可以使用多线程来提高爬取速度。具体流程如下: 创建多个线程 定义每个线程需要执行的任务 启动线程,开始执行任务 等待所有线程执…

    python 2023年5月14日
    00
  • 从 Python Discord 机器人中的线程发送消息

    【问题标题】:Sending messages from a thread in a Python Discord bot从 Python Discord 机器人中的线程发送消息 【发布时间】:2023-04-03 03:25:01 【问题描述】: 我正在使用 discord.py 库并正在开发一个 discord 机器人。 基本上,我需要我的机器人每小时访…

    Python开发 2023年4月8日
    00
  • Python列表去重复项的N种方法(实例代码)

    Python列表去重复项的N种方法(实例代码)攻略 在Python中,有多种方法可以去除列表中的重复项。本文将详细讲解Python列表去重复项的N种方法,包括使用set()函数、使用列表推导式、使用循环和使用字典。下面将分别介绍这些方法的具体实现。 使用set()函数 在Python中,可以使用set()函数将列表转换为集合,从而去除其中的重复项。下面是一个…

    python 2023年5月13日
    00
  • python数据结构之递归方法讲解

    Python数据结构之递归方法讲解 递归是一种常用的编程技巧,它可以将一个问题分解成更小的子问题,直到问题变得足够简单,可以直接解决。在Python中,递归可以用于解决许多问题,例如计算阶、斐波那契数列等。本文将详细介绍Python中递归的用法和示例。 递归的基本原理 递归是一种函数调用自身的技术。在递归函数中,函数会不断地调用自身,直到满足某条件才停止递归…

    python 2023年5月13日
    00
  • python实现中文输出的两种方法

    这里就为你详细讲解一下Python实现中文输出的两种方法,包含两个示例。 方法一:使用unicode字符串 在Python 2中,可以使用unicode字符串来输出中文。 首先在文件开头添加 # coding=utf-8,表示该文件使用utf-8编码。 然后使用u前缀来标记一个字符串为unicode字符串,例如: # coding=utf-8 name = …

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部