当前位置: 首页 > news >正文

Python的知识点运用-1(日期转换)


问:如何将 '星期一, 三月 13, 2023'转换成2023-03-13


看到这个问题,你的第一反应是什么???

反正我是懵逼的。不过后面一想,时间模块可以。

在这个问题后面,群友又问了一个问题,如何在本地电脑让代码到点执行?

你怎么想???

time模块可以解决,其实也不仅仅只有time模块可以解决。脑洞打开!!!

到此结束!回回归正题!


一周多没更新,本章更新一个算常用模块的知识点。该知识点是某位群友提出来的!!!本意是问有没有简单的方式得出结果,且不能太慢。


我的第一反应是用 切片 以及 字典 + datetime模块。一起来看看

from datetime import datetimedate_str = '三月 13, 2023'# 将中文月份映射到数字月份
month_dict = {'一月': '1', '二月': '2', '三月': '3', '四月': '4', '五月': '5', '六月': '6', '七月': '7', '八月': '8', '九月': '9', '十月': '10', '十一月': '11', '十二月': '12'}
for month in month_dict:date_str = date_str.replace(month, month_dict[month])date = datetime.strptime(date_str, '%m %d, %Y')
format_date = date.strftime('%Y-%m-%d')print(format_date)
# 2023-03-13

注意:切片就不用说了吧,我这里直接拿着切片后的结果跑的。

这样就能得到结果,不过感觉有些麻烦,怎么办?

寻求网路资源,最后得到一个简单的

不过需要下载第三方模块!

import dateparserdate_str = '三月 13, 2023'
date = dateparser.parse(date_str, languages=['zh'])
format_date = date.strftime('%Y-%m-%d')print(format_date)

这样也是可以的。不过有点慢


不过最后,提出问题的当事人,最后给出的结果,是跟第一种方式类似,不过采用了正则。

import remonth_table = {'一': '1', '二': '2', '三': '3','四': '4', '五': '5', '六': '6','七': '7', '八': '8', '九': '9','十': '10', '十一': '11', '十二': '12'}text = '星期一, 三月 13, 2023'month, day, year = re.findall("([^\s]{,2})月 (\d{,2}), (\d{2,4})", text)[0]
month = month_table[month]
f"{year}-{month}-{day}"

看到上面的解决方式,你的想法是什么的。直呼大神?还是感觉麻烦?还是没必要这么写?

http://www.lryc.cn/news/41228.html

相关文章:

  • 原理图制图规范详细说明
  • 【Unity小知识】Editor编写常用方法汇总
  • 【数据仓库-4】-- 提取、转换、装载(ETL)
  • 【DBC专题】-12-不同类型报文(应用/诊断/网关/测量标定)在DBC中配置,以及在Autosar各模块间的信号数据流向
  • 【Linux】进程的基础概念 进程的相关操作 进程的状态
  • 【小猫爪】AUTOSAR学习笔记06-Communication Stack之ComM模块
  • BP插件开发(JAVA)
  • 【Zookeeper】介绍与配置
  • chrome快捷键
  • 手搓string类
  • 小白学Pytorch系列--Torch API (7)
  • 函数(上)——“Python”
  • ChatGPT说:如何利用ChatGPT变现?躺着赚钱不是梦。
  • 4.网络爬虫—Post请求(实战演示)
  • 【视频文稿】车载Android应用开发与分析 - 开发系统应用
  • Scala流程控制
  • 人脸活体检测系统(Python+YOLOv5深度学习模型+清新界面)
  • prometheus03-如何导出prometheus指标
  • Linux驱动开发——串口设备驱动
  • LeetCode--缺失的第一个正数(41)和 接雨水(42)
  • java源码阅读---ReentrantLock源码解析
  • OpenCv + Qt5.12.2 文字识别
  • 网络作业1【计算机网络】
  • 常见背包问题
  • 【python】python编译器以及安装
  • Effective C++快速复习
  • 【华为OD机试真题JAVA】绘图机器的绘图问题
  • GPT-4最震撼我的一点
  • LeetCode-复制带随机指针的链表
  • 如何在Unity中实现AStar寻路算法及地图编辑器