Datetime current year and month in Python

后端 未结 7 993
情话喂你
情话喂你 2020-12-07 21:33

I must have the current year and month in datetime.

I use this:

datem = datetime.today().strftime(\"%Y-%m\")
datem = datetime.strptime(datem, \"%Y-%m         


        
相关标签:
7条回答
  • 2020-12-07 22:11

    Late answer, but you can also use:

    import time
    ym = time.strftime("%Y-%m")
    
    0 讨论(0)
  • 2020-12-07 22:15

    Use:

    from datetime import datetime
    
    current_month = datetime.now().strftime('%m') // 02 //This is 0 padded
    current_month_text = datetime.now().strftime('%h') // Feb
    current_month_text = datetime.now().strftime('%B') // February
    
    current_day = datetime.now().strftime('%d')   // 23 //This is also padded
    current_day_text = datetime.now().strftime('%a')  // Fri
    current_day_full_text = datetime.now().strftime('%A')  // Friday
    
    current_weekday_day_of_today = datetime.now().strftime('%w') //5  Where 0 is Sunday and 6 is Saturday.
    
    current_year_full = datetime.now().strftime('%Y')  // 2018
    current_year_short = datetime.now().strftime('%y')  // 18 without century
    
    current_second= datetime.now().strftime('%S') //53
    current_minute = datetime.now().strftime('%M') //38
    current_hour = datetime.now().strftime('%H') //16 like 4pm
    current_hour = datetime.now().strftime('%I') // 04 pm
    
    current_hour_am_pm = datetime.now().strftime('%p') // 4 pm
    
    current_microseconds = datetime.now().strftime('%f') // 623596 Rarely we need.
    
    current_timzone = datetime.now().strftime('%Z') // UTC, EST, CST etc. (empty string if the object is naive).
    

    Reference: 8.1.7. strftime() and strptime() Behavior

    Reference: strftime() and strptime() Behavior

    The above things are useful for any date parsing, not only now or today. It can be useful for any date parsing.

    e.g.
    my_date = "23-02-2018 00:00:00"
    
    datetime.strptime(str(my_date),'%d-%m-%Y %H:%M:%S').strftime('%Y-%m-%d %H:%M:%S+00:00')
    
    datetime.strptime(str(my_date),'%d-%m-%Y %H:%M:%S').strftime('%m')
    

    And so on...

    0 讨论(0)
  • 2020-12-07 22:19

    Try this solution:

    from datetime import datetime
    
    currentSecond= datetime.now().second
    currentMinute = datetime.now().minute
    currentHour = datetime.now().hour
    
    currentDay = datetime.now().day
    currentMonth = datetime.now().month
    currentYear = datetime.now().year
    
    0 讨论(0)
  • 2020-12-07 22:22

    You can always use a sub-string method:

    import datetime;
    
    today = str(datetime.date.today());
    curr_year = int(today[:4]);
    curr_month = int(today[5:7]);
    

    This will get you the current month and year in integer format. If you want them to be strings you simply have to remove the " int " precedence while assigning values to the variables curr_year and curr_month.

    0 讨论(0)
  • 2020-12-07 22:22
    >>> from datetime import date
    >>> date.today().month
    2
    >>> date.today().year
    2020
    >>> date.today().day
    13
    
    0 讨论(0)
  • 2020-12-07 22:27

    You can write the accepted answer as a one-liner using date.replace:

    datem = datetime.today().replace(day=1)
    
    0 讨论(0)
提交回复
热议问题