我必须有日期时间的当前年份和月份。
我用这个:
datem = datetime.today().strftime("%Y-%m")
datem = datetime.strptime(datem, "%Y-%m")
可能还有另一种方法吗?
Answers:
使用:
from datetime import datetime
today = datetime.today()
datem = datetime(today.year, today.month, 1)
我想你想要本月的第一天。
today
变量已经具有当前的年份和月份。
from datetime import datetime
而不是简单使用import datetime
试试这个解决方案:
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
from datetime
做的,你为什么需要它?
date
模块(from datetime import date
),处理时间的time
子模块以及不幸的datetime
是,这两个子模块都可以处理。还有timedelta
和tzinfo
在那里。一个人可能只想import datetime
获取带有所有子模块的整个程序包,但是方法调用看起来像datetime.datetime.now()
或datetime.date.today()
。通常,出于几个原因,最好只导入所需的组件。
使用:
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).
参考:8.1.7。strftime()和strptime()行为
以上内容对于任何日期解析都是有用的,不仅是现在还是今天。它对于任何日期解析都很有用。
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')
等等...
您可以使用以下命令将接受的答案写成单行date.replace
:
datem = datetime.today().replace(day=1)
您始终可以使用子字符串方法:
import datetime;
today = str(datetime.date.today());
curr_year = int(today[:4]);
curr_month = int(today[5:7]);
这将使您获得当前月份和年份的整数格式。如果希望它们成为字符串,则只需在将值分配给变量curr_year
and时删除“ int”优先级curr_month
。
datetime.datetime.now().month
更好。
date.today().strftime("%Y-%m")
?