本文介绍了从西班牙语解析日期并更改格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这可能是一个重复的问题,但由于我已经阅读了所有 关于它的评论,我没有解决我的问题,我必须再问一次。我使用的是一个数据框,其中有一列如下所示:
print final['fecha_dato'][2]
31 de Enero del 2017
我这样做是为了让它更容易理解:
d = final['fecha_dato'][2]
d = d.replace(' de ','-')
d = d.replace(' del ','-')
我得到以下输出: ‘31-Enero-2017’
我想将其转换为31-01-2017格式,我尝试了一下,以便使 西班牙语通俗易懂:
locale.setlocale(locale.LC_ALL, 'en_US')
但它显示:不支持的区域设置。
一旦我这样做了,我想我将不得不这样做:
datetime.strptime('6-Mar-2016', '%d-%b-%Y').strftime('%Y-%m-%d')
让我们看看问题出在哪里。如果你能给我一种使用替换的方法 只要一句话,那也是很棒的。 提前感谢!!
推荐答案
您可能使用的是Windows,其中的区域设置代码不同。首先,您可以使用适当的代码解析区域设置,以便正确读取日期字符串:
import locale
locale.setlocale(locale.LC_ALL, 'esp_esp')
然后,如您所料,使用strptime
解析字符串以获得Date对象,然后使用strftime
:
from datetime import datetime as dt
date = dt.strptime('31 de Enero del 2017', '%d de %B del %Y')
date_str = date.strftime('%Y-%m-%d')
这篇关于从西班牙语解析日期并更改格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!