python - fromtimestamp() 的反义词是什么?
问题描述
我试图弄清楚如何将二进制文件导入python,但这是很多猜测和反复试验。在这种情况下,我想做的是找到字节流中特定日期出现的位置,即:
import re
import datetime
import binascii
import time
with open('inputfile.nda', 'rb') as f:
data = f.read()
# This line needs fixing
i = int.oppositeof_fromtimestamp(2019, 10, 10, 14, 53, 57.000) # '2019/10/10 14:53:57.000'
time_stamp = i.to_bytes(4, byteorder='little')
df = [m.start() for m in re.finditer(time_stamp, data)]
print(df)
是否有可以将日期转换为字节流的函数(或一组函数)?
解决方案
您正在寻找datetime.timestamp()
:
import datetime
ts = datetime.datetime(2019, 10, 10, 14, 53, 57)
unix_time = int(ts.timestamp())
unix_time_bytes = unix_time.to_bytes(4, byteorder='little')
print(ts, unix_time, unix_time_bytes)
输出
2019-10-10 14:53:57 1570708437 b'\xd5\x1b\x9f]'
然后你可能想用它data.index(unix_time_bytes)
来查找字符串,而不是正则表达式。
推荐阅读
- javascript - 单元测试 MatDialog
- pip - 使用 conda 虚拟环境后将软件包安装到 Mac 桌面
- html - 谁能告诉我为什么位置:在 CSS 中的三次贝塞尔函数中需要固定?
- reactjs - 在 React 中,如何获取状态到 UI 中,然后通过数组对象进行映射
- python - 如何删除重复的三个列表中的相应值?
- php - 如何在每个主题的基础上创建唯一索引?
- python - python pandas re:search 抛出错误:预期的字符串或类似字节的对象
- sql - SELECT DISTINCT 返回 DATE 列的重复值
- sqlite - 如何根据参数日期将每个最接近日期的行中的值累积到日期列表作为参数?
- r - 计算过去 30 天的逐日滚动聚合的有效方法