You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中字符串转日期:实现葡萄牙语月份缩写格式显示

如何将日期字符串转换为带葡萄牙语月份缩写的格式

我来帮你搞定这个日期格式转换的需求!在Python里,我们可以通过两种常见方式实现:利用本地化设置(locale),或者手动映射月份缩写,下面分别给你详细说明:

方法一:使用locale模块实现本地化格式转换

这种方法会直接借助系统的本地化配置生成葡萄牙语的月份缩写,步骤如下:

  1. 导入所需模块:
import datetime
import locale
  1. 设置本地化的时间格式为葡萄牙语(欧洲葡萄牙)
    注意:不同操作系统的locale名称略有差异:
    • Linux/macOS:'pt_PT.UTF-8'
    • Windows:'Portuguese_Portugal.1252'
# 根据你的系统选择对应的locale名称
try:
    locale.setlocale(locale.LC_TIME, 'pt_PT.UTF-8')
except locale.Error:
    # 如果系统不支持欧洲葡萄牙语,可尝试巴西葡萄牙语(缩写和需求一致)
    locale.setlocale(locale.LC_TIME, 'pt_BR.UTF-8')
  1. 解析输入的日期字符串,并格式化为目标格式
# 处理第一个日期
date_str1 = "23/02/2018"
date_obj1 = datetime.datetime.strptime(date_str1, "%d/%m/%Y")
formatted_date1 = date_obj1.strftime("%d-%b-%Y").lower()  # lower()确保缩写为小写
print(formatted_date1)  # 输出:23-fev-2018

# 处理第二个日期
date_str2 = "23/10/2017"
date_obj2 = datetime.datetime.strptime(date_str2, "%d/%m/%Y")
formatted_date2 = date_obj2.strftime("%d-%b-%Y").lower()
print(formatted_date2)  # 输出:23-out-2017

方法二:手动映射月份缩写(避免locale依赖)

如果你的系统无法设置葡萄牙语locale,或者想更灵活控制月份缩写,可以手动创建映射字典:

import datetime

# 定义葡萄牙语月份缩写映射(数字字符串到缩写)
pt_month_abbr = {
    '01': 'jan',
    '02': 'fev',
    '03': 'mar',
    '04': 'abr',
    '05': 'mai',
    '06': 'jun',
    '07': 'jul',
    '08': 'ago',
    '09': 'set',
    '10': 'out',
    '11': 'nov',
    '12': 'dez'
}

def format_pt_date(date_str):
    # 解析日期字符串为datetime对象
    date_obj = datetime.datetime.strptime(date_str, "%d/%m/%Y")
    # 获取日、月份数字字符串、年
    day = str(date_obj.day).zfill(2)
    month_num = str(date_obj.month).zfill(2)
    year = str(date_obj.year)
    # 拼接成目标格式
    return f"{day}-{pt_month_abbr[month_num]}-{year}"

# 测试
print(format_pt_date("23/02/2018"))  # 23-fev-2018
print(format_pt_date("23/10/2017"))  # 23-out-2017

两种方法都能满足你的需求,第一种更简洁,第二种更独立,不用担心系统locale的限制~

内容的提问来源于stack exchange,提问作者Ricardo Marques

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 09:04:06