如何从月份编号中获得月份名称?
例如,如果我有3,我想返回march
date.tm_month()
如何获得弦乐进行曲?
如何从月份编号中获得月份名称?
例如,如果我有3,我想返回march
date.tm_month()
如何获得弦乐进行曲?
当前回答
'01'到'Jan'
from datetime import datetime
datetime.strptime('01', "%m").strftime("%b")
其他回答
如果你只有月份号而没有datetime实例,你可以构建一个小函数来映射number和label,如下所示:
def monthname(m):
d={1:'En',2:'Fe',3:'Mr',4:'Ab',5:'My',6:'Jn',7:'Jl',8:'Ag',9:'Se',10:'Oc',11:'No',12:'Di'}
return d[m]
datetime -基本日期和时间类型- Python文档
所有strftime格式代码的列表。月份的名称,以及格式化左零填充之类的好东西。阅读整页的内容,比如“天真”参数的规则。以下是清单的简要内容:
%a Sun, Mon, …, Sat
%A Sunday, Monday, …, Saturday
%w Weekday as number, where 0 is Sunday
%d Day of the month 01, 02, …, 31
%b Jan, Feb, …, Dec
%B January, February, …, December
%m Month number as a zero-padded 01, 02, …, 12
%y 2 digit year zero-padded 00, 01, …, 99
%Y 4 digit Year 1970, 1988, 2001, 2013
%H Hour (24-hour clock) zero-padded 00, 01, …, 23
%I Hour (12-hour clock) zero-padded 01, 02, …, 12
%p AM or PM.
%M Minute zero-padded 00, 01, …, 59
%S Second zero-padded 00, 01, …, 59
%f Microsecond zero-padded 000000, 000001, …, 999999
%z UTC offset in the form +HHMM or -HHMM +0000, -0400, +1030
%Z Time zone name UTC, EST, CST
%j Day of the year zero-padded 001, 002, …, 366
%U Week number of the year zero padded, Days before the first Sunday are week 0
%W Week number of the year (Monday as first day)
%c Locale’s date and time representation. Tue Aug 16 21:30:00 1988
%x Locale’s date representation. 08/16/1988 (en_US)
%X Locale’s time representation. 21:30:00
%% literal '%' character.
这个脚本展示了如何获得数据帧中月份变量/列的日历月缩写。注意,假设month列/变量的值都是数字,可能会有一些缺失的值。
# Import the calendar module
import calendar
# Extract month as a number from the date column
df['Month']=pd.DatetimeIndex(df['Date']).month
# Using list comprehension extract month abbreviations for each month number
df['Month_abbr']=[calendar.month_abbr[int(i)] if pd.notna(i) else i for i in df['Month']]
如果(像我一样)你在数据框架中有一列月份数字,我会提供这个:
df['monthName'] = df['monthNumer'].apply(lambda x: calendar.month_name[x])
而不是导入或下载一个新的库,你可以使用我的手动功能:
将代码复制到一个新的.py文件并运行它
快速的解释:
更改your_number并输出month_from_number,您将得到月份
your_number = 10
def num_to_month(*args, **kwargs):
num = kwargs.get("num", None)
if int(num) <= 12 and int(num) > 0:
list_of_months = {'1': 'January', '2': 'February', '3': 'March',
'4': 'April', '5': 'May', '6': 'June', '7': 'July',
'8': 'August', '9': 'September', '10': 'October',
'11': 'November', '12': 'December'}
return list_of_months[num]
else:
print('num_to_month function error: "num=' + str(num) + '"')
month_from_num = num_to_month(num=your_number)
print(month_from_num)
结果将在10月份公布