如何查看它是几月?蟒蛇

时间:2014-04-04 22:03:19

标签: python calendar

我正在编写一个代码,将不同季节的特定数据分配给不同的季节。我希望程序根据当前的月份打印各种数据。

Autumn = 'September'
Autumn = 'October'
Autumn = 'November'
Autumn = 'December'
Autumn = 'January' #(The start Jan 01)
Spring = 'January' #(Jan 02 onwards)
Spring = 'February'
Spring = 'March'
Spring = 'April' #(The start April 04)
Summer = 'Apirl' #(April 05 onwards)
Summer = 'May'
Summer = 'June'
Summer = 'July'

4 个答案:

答案 0 :(得分:5)

您可以使用strftime()模块中的time功能。这会将当前月份存储在名为current_month的变量中。

from time import strftime
current_month = strftime('%B')

如果您想从此获得当前季节,请尝试以下功能:

def get_season(month):
    seasons = {
    'Autumn': ['September', 'October', 'November', 'December', 'January'],
    'Spring': ['January', 'February', 'March', 'April'],
    'Summer': ['Apirl', 'May', 'June', 'July']
    }

    for season in seasons:
        if month in seasons[season]:
            return season
    return 'Invalid input month'

目前,这不会解决您指定的日期冲突,因为1月份的任何一天都会返回'Autumn',而4月的任何一天都会找到'Spring'

答案 1 :(得分:4)

time.strftime("%b") 

将告诉您当前月份(缩写)

time.strftime("%m") 

将为您提供数字月份(即1 = Jan / 12 = Dec)

(甚至更好)

datetime.datetime.now().month

因为它会给你一个实际的整数而不是一个字符串(虽然1月是0,但是要警告)

答案 2 :(得分:1)

您可以使用datetime.datetime.now

>>> from datetime import datetime
>>> datetime.now().month  # As a number
4
>>> datetime.now().strftime("%B")  # As a name
'April'
>>> datetime.now().strftime("%b")  # As an abbreviated name
'Apr'
>>>

答案 3 :(得分:-1)

whit import datetime 你可以使用datetime.date.today() 并返回当前日期或日期时间