新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
对于像'Wed, 11 Apr 2012 09:37:05 +0800'的时间格式化可如下解:
泗县网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站开发等网站项目制作,到程序开发,运营维护。创新互联公司自2013年起到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司。
date='Wed, 11 Apr 2012 09:37:05 +0800'
dd=datetime.datetime.strptime(date,'%a, %d %b %Y %H:%M:%S %z')
dd.strftime('%Y-%m-%d %H:%M:%S')
Python格式化日期时间的函数为datetime.datetime.strftime();由字符串转为日期型的函数为:datetime.datetime.strptime(),两个函数都涉及日期时间的格式化字符串,列举如下:
%a Abbreviated weekday name
%A Full weekday name
%b Abbreviated month name
%B Full month name
%c Date and time representation appropriate for locale
%d Day of month as decimal number (01 - 31)
%H Hour in 24-hour format (00 - 23)
%I Hour in 12-hour format (01 - 12)
%j Day of year as decimal number (001 - 366)
%m Month as decimal number (01 - 12)
%M Minute as decimal number (00 - 59)
%p Current locale's A.M./P.M. indicator for 12-hour clock
%S Second as decimal number (00 - 59)
%U Week of year as decimal number, with Sunday as first day of week (00 - 51)
%w Weekday as decimal number (0 - 6; Sunday is 0)
%W Week of year as decimal number, with Monday as first day of week (00 - 51)
%x Date representation for current locale
%X Time representation for current locale
%y Year without century, as decimal number (00 - 99)
%Y Year with century, as decimal number
%z, %Z Time-zone name or abbreviation; no characters if time zone is unknown
%% Percent sign
#蔡勒公式:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1
import math
dict = {1: “星期一”, 2: “星期二”, 3: “星期三”, 4: “星期四”, 5: “星期五”, 6: “星期六”, 0: “星期天”}
while 1:
y=int(input(“请输入年份”))
m=int(input(“请输入月份”))
d=int(input(“请输入天”))
if m1 :
m=13
y=y-1
elif m2:
m=14
y=y-1
allday=math.floor((y-1)+(y-1)/4-(y-1)/100+(y-1)/400+13*(m+1)/5+(m-1)*28-7+d)
x=allday%7
print(dict.get(x))
WEEKDAY(serial_number,return_type);
serial_number 是要返回日期数的日期,它有多copy种输入方式:带引号的文本串(如"2001/02/26")、序列号(如35825 表示1998 年1 月30 日) 或其他公式或函数的结果(如DATEVALUE("2000/1/30"))。
return_type为确定返回值类型的数字,数字1 或省略则1 至7 代表星期天到星期六,知数字2 则1 至7 代表星期一到星期天,数字3则0至6代表星期一到星期天。
python中的时间模块主要有time, datetime。
I, time模块
time模块中包含了四种时间格式:
float格式,即给定时间相对于epoch增加的秒数
tuple格式,一个九元组 (tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst)
string格式,'Mon Feb 6 15:00:06 2012'
format格式,以指定的格式生成的时间
针对这几种时间格式,time模块提供了函数在格式之间相互转换。
asctime(tuple) -string
ctime(float) -string
gmtime(float) -tuple
localtime(float) -tuple
mktime(tuple) -float
strftime(format, tuple) -format string
strptime(formatstring, format) -tuple
time() - float
上述函数中,除了time()函数直接返回当前时间相对于epoch的秒数外,其他函数都要求有时间的输入,如果没有输入,则默认使用当前时间。
另外,strftime和strptime中的format使用下面的格式:
%a 英文星期简写
%A 英文星期的完全
%b 英文月份的简写
%B 英文月份的完全
%c 显示本地日期时间
%d 日期,取1-31
%H 小时, 0-23
%I 小时, 0-12
%m 月, 01 -12
%M 分钟,1-59
%j 年中当天的天数
%w 显示今天是星期几
%W 第几周
%x 当天日期
%X 本地的当天时间
%y 年份 00-99间
%Y 年份的完整拼写
%S 秒(00-59)
除了上述的时间转换函数之外,模块还提供了下面的函数:
clock() 返回进程的创建时间,以秒计数的float
sleep(float) sleep一段时间,以秒计数
tzset() 更改时区
II, datetime
datetime模块定义了下面这几个类:
datetime.date:表示日期的类。常用的属性有year, month, day;datetime.time:表示时间的类。常用的属性有hour, minute, second, microsecond;datetime.datetime:表示日期时间。datetime.timedelta:表示时间间隔,即两个时间点之间的长度。datetime.tzinfo:与时区有关的相关信息。(这里不详细充分讨论该类,感兴趣的童鞋可以参考python手册)
注 :上面这些类型的对象都是不可变(immutable)的。
下面详细介绍这些类的使用方式。
date类
date类表示一个日期。日期由年、月、日组成(地球人都知道~~)。date类的构造函数如下:
class datetime.date(year, month, day):参数的意义就不多作解释了,只是有几点要注意一下:
year的范围是[MINYEAR, MAXYEAR],即[1, 9999];month的范围是[1, 12]。(月份是从1开始的,不是从0开始的~_~);day的最大值根据给定的year, month参数来决定。例如闰年2月份有29天;
date类定义了一些常用的类方法与类属性,方便我们操作:
date.max、date.min:date对象所能表示的最大、最小日期;date.resolution:date对象表示日期的最小单位。这里是天。date.today():返回一个表示当前本地日期的date对象;date.fromtimestamp(timestamp):根据给定的时间戮,返回一个date对象;datetime.fromordinal(ordinal):将Gregorian日历时间转换为date对象;(Gregorian Calendar :一种日历表示方法,类似于我国的农历,西方国家使用比较多,此处不详细展开讨论。)