python3时间
A. python怎么调用时间
datetime在python中比较常用,主要用来处理时间日期,使用前先倒入datetime模块。下面总结下本人想到的几个常用功能。
1、当前时间:
>>> print datetime.datetime.now()2015-07-17 16:39:15.712000>>> print type(datetime.datetime.now())
<type 'datetime.datetime'>
返回的datetime时间格式。
2、当前日期
>>> print datetime.datetime.now().date()2015-07-17>>> print type(datetime.datetime.now().date())
<type 'datetime.date'>
3、当前时间tuple
>>> datetime.datetime.now().timetuple()time.struct_time(tm_year=2015, tm_mon=7, tm_mday=17, tm_hour=16, tm_min=51, tm_sec=26, tm_wday=4, tm_yday=198, tm_isdst=-1)
>>> datetime.datetime.now().timetuple().tm_mday17
4、时间移动(几天、几小时前后...)
使用datetime.timedelta这个方法来前后移动时间,可以用的参数有weeks,days,hours,minutes,seconds,microseconds。
>>> print datetime.datetime.now() + datetime.timedelta(days=1)2015-07-18 16:49:48.574000>>> print datetime.datetime.now() + datetime.timedelta(hours=1)2015-07-17 17:49:57.122000>>> print datetime.datetime.now() + datetime.timedelta(minutes=-30)2015-07-17 16:20:08.619000
上个月最后一天
>>> print datetime.date(day=1,month=datetime.date.today().month,year=datetime.date.today().year) - datetime.timedelta(days=1)2015-06-30
5、获取两个时间的时间差
>>> (datetime.datetime.now() - datetime.datetime.utcnow()).total_seconds()
28800.0
6、时间转化
datetime转str格式:
>>> datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")'2015-07-17 16:58:46'
str格式转datetime格式:
>>> datetime.datetime.strptime("2015-07-17 16:58:46","%Y-%m-%d %H:%M:%S")
datetime.datetime(2015, 7, 17, 16, 58, 46)
>>> print datetime.datetime.strptime("2015-07-17 16:58:46","%Y-%m-%d %H:%M:%S")2015-07-17 16:58:46>>> print type(datetime.datetime.strptime("2015-07-17 16:58:46","%Y-%m-%d %H:%M:%S"))
<type 'datetime.datetime'>
datetime转timestamp:
>>> import time>>> now=datetime.datetime.now()>>> time.mktime(now.timetuple())1437123812.0
timestamp转datetime:
>>> datetime.datetime.fromtimestamp(1437123812.0)datetime.datetime(2015, 7, 17, 17, 3, 32)
>>> print datetime.datetime.fromtimestamp(1437123812.0)
2015-07-17 17:03:32
B. python datetime处理时间
python时间处理方法datetime(),下面就举几个代码案例进行说明,代码如下:
#-*-coding:utf-8-*-
#运行环境:Python3.4
#datetime类
#datetime是date与time的结合体,包括date与time的所有信息。
#它的构造函数如下:
#datetime.datetime(year,month,day[,hour[,minute[,second[,microsecond[,tzinfo]]]]])
#各参数的含义与date、time的构造函数中的一样,要注意参数值的范围。
#1.datetime类定义的类属性与方法:
#datetime.min、datetime.max:datetime所能表示的最小值与最大值;
#print:datetime.max:9999-12-3123:59:59.999999
#print:datetime.min:0001-01-0100:00:00
fromdatetimeimport*
importtime
print('datetime.max:'+str(datetime.max))
print('datetime.min:'+str(datetime.min))
#datetime.resolution:datetime最小单位;
#print:datetime.resolution:0:00:00.000001
print('datetime.resolution:'+str(datetime.resolution))
#datetime.today():返回一个表示当前本地时间的datetime对象;
#print:today():2012-09-1219:37:50.721000
print('today():'+str(datetime.today()))
#datetime.now([tz]):返回一个表示当前本地时间的datetime对象,如果提供了参数tz,则获取tz参数所指时区的本地时间;
#print:now():2012-09-1219:37:50.738000
print('now():'+str(datetime.now()))
#datetime.utcnow():返回一个当前utc时间的datetime对象;
#print:2012-09-1211:37:50.739000
print('utcnow():'+str(datetime.utcnow()))
#datetime.fromtimestamp(timestamp[,tz]):根据时间戮创建一个datetime对象,参数tz指定时区信息;
#print:fromtimestamp(tmstmp):2012-09-1219:37:50.741000
print('fromtimestamp(tmstmp):'+str(datetime.fromtimestamp(time.time())))
#datetime.utcfromtimestamp(timestamp):根据时间戮创建一个datetime对象;
#print:utcfromtimestamp(tmstmp):2012-09-1211:37:50.742000
print('utcfromtimestamp(tmstmp):'+str(datetime.utcfromtimestamp(time.time())))
#datetime.combine(date,time):根据date和time,创建一个datetime对象;
#print:datetime.combine(date,time):2012-09-1219:46:05
d=date(2012,9,12)
fromdatetimeimport*
t=time(19,46,5)
print('datetime.combine(date,time):'+str(datetime.combine(d,t)))
#datetime.strptime(date_string,format):将格式字符串转换为datetime对象;
#print:2007-03-0421:08:12
print(datetime.strptime("2007-03-0421:08:12","%Y-%m-%d%H:%M:%S"))
#2.datetime类提供的实例方法与属性
dt=datetime.strptime("2012-09-1221:08:12","%Y-%m-%d%H:%M:%S")
#print:2012912218120None
print(dt.year)
print(dt.month)
print(dt.day)
print(dt.hour)
print(dt.minute)
print(dt.second)
print(dt.microsecond)
print(dt.tzinfo)
print(dt.date())
print(dt.time())
print(dt.replace(year=2013))
print(dt.timetuple())
print(dt.utctimetuple())
print(dt.toordinal())
print(dt.weekday())
print(dt.isocalendar())
#printdt.isoformat([sep])
#datetime.ctime():返回一个日期时间的C格式字符串,等效于time.ctime(time.mktime(dt.timetuple()));
#3.格式字符串
#datetime.strftime(format)
#%a星期的简写。如星期三为Web
#%A星期的全写。如星期三为Wednesday
#%b月份的简写。如4月份为Apr
#%B月份的全写。如4月份为April
#%c:日期时间的字符串表示。(如:04/07/1010:43:39)
#%d:日在这个月中的天数(是这个月的第几天)
#%f:微秒(范围[0,999999])
#%H:小时(24小时制,[0,23])
#%I:小时(12小时制,[0,11])
#%j:日在年中的天数[001,366](是当年的第几天)
#%m:月份([01,12])
#%M:分钟([00,59])
#%p:AM或者PM
#%S:秒(范围为[00,61],为什么不是[00,59],参考python手册~_~)
#%U:周在当年的周数当年的第几周),星期天作为周的第一天
#%w:今天在这周的天数,范围为[0,6],6表示星期天
#%W:周在当年的周数(是当年的第几周),星期一作为周的第一天
#%x:日期字符串(如:04/07/10)
#%X:时间字符串(如:10:43:39)
#%y:2个数字表示的年份
#%Y:4个数字表示的年份
#%z:与utc时间的间隔(如果是本地时间,返回空字符串)
#%Z:时区名称(如果是本地时间,返回空字符串)
#%%:%%=>%
dt=datetime.now()
#print:(%Y-%m-%d%H:%M:%S%f):2012-09-1223:04:27145000
print('(%Y-%m-%d%H:%M:%S%f):'+str(dt.strftime('%Y-%m-%d%H:%M:%S%f')))
#print:(%Y-%m-%d%H:%M:%S%p):12-09-1211:04:27PM
print('(%Y-%m-%d%H:%M:%S%p):'+str(dt.strftime('%y-%m-%d%I:%M:%S%p')))
#print:%a:Wed
print('%%a:%s'%dt.strftime('%a'))
#print:%A:Wednesday
print('%%A:%s'%dt.strftime('%A'))
#print:%b:Sep
print('%%b:%s'%dt.strftime('%b'))
#print:%B:September
print('%%B:%s'%dt.strftime('%B'))
#print:日期时间%c:09/12/1223:04:27
print('日期时间%%c:%s'%dt.strftime('%c'))
#print:日期%x:09/12/12
print('日期%%x:%s'%dt.strftime('%x'))
#print:时间%X:23:04:27
print('时间%%X:%s'%dt.strftime('%X'))
#print:今天是这周的第3天
print('今天是这周的第%s天'%dt.strftime('%w'))
#print:今天是今年的第256天
print('今天是今年的第%s天'%dt.strftime('%j'))
#print:今周是今年的第37周
print('今周是今年的第%s周'%dt.strftime('%U'))
上面代码案例运行结果如下:
atetime.max:9999-12-3123:59:59.999999
datetime.min:0001-01-0100:00:00
datetime.resolution:0:00:00.000001
today():2014-05-0415:58:18.141186
now():2014-05-0415:58:18.193146
utcnow():2014-05-0407:58:18.243958
fromtimestamp(tmstmp):2014-05-0415:58:18.291558
utcfromtimestamp(tmstmp):2014-05-0407:58:18.342550
datetime.combine(date,time):2012-09-1219:46:05
2007-03-0421:08:12
2012
9
12
21
8
12
0
None
2012-09-12
21:08:12
2013-09-1221:08:12
time.struct_time(tm_year=2012,tm_mon=9,tm_mday=12,tm_hour=21,tm_min=8,tm_sec=12,tm_wday=2,tm_yday=256,tm_isdst=-1)
time.struct_time(tm_year=2012,tm_mon=9,tm_mday=12,tm_hour=21,tm_min=8,tm_sec=12,tm_wday=2,tm_yday=256,tm_isdst=0)
734758
2
(2012,37,3)
(%Y-%m-%d%H:%M:%S%f):2014-05-0415:58:19326295
(%Y-%m-%d%H:%M:%S%p):14-05-0403:58:19PM
%a:Sun
%A:Sunday
%b:May
%B:May
日期时间%c:SunMay415:58:192014
日期%x:05/04/14
时间%X:15:58:19
今天是这周的第0天
今天是今年的第124天
今周是今年的第18周
C. python怎么输入日期
"%Y - %m - %d"不能有空格,如果是python3,把raw_input改成input。
#-*-coding:UTF-8-*-
importtime
importdatetime
a=raw_input('请输入日期,格式为yyyy-mm-dd')
t=time.strptime(a,"%Y-%m-%d")
y,m,d=t[0:3]
print(datetime.datetime(y,m,d))
D. python3 环境,如何计算时间的比较和加减
显示5分钟前的时间
print(datetime.datetime.now()-datetime.timedelta(seconds=5*60))
构造时间并显示时间差
d=datetime.datetime.now()
d=d.replace(hour=9,minute=30,second=0)
print((datetime.datetime.now()-d))
E. Python 日期和时间的几种输出格式
time 模块, datetime模块 都可以,一种方式是转化为格式化后的日期格式,也就是说输出的日期是字符串格式的,当然,如果你希望还是日期类型的话,再转回日期类型就行了
F. Python 日期和时间
datetime模块为日期和时间处理同时提供了简单和复杂的方法。支持日期和时间算法的同时,实现的重点放在更有效的处理和格式化输出。该模块还支持时区处理。
>>>#
>>>fromdatetimeimportdate
>>>now=date.today()
>>>now
datetime.date(2003,12,2)
>>>now.strftime("%m-%d-%y.%d%b%Yisa%Aonthe%ddayof%B.")
'12-02-03..'
>>>#
>>>birthday=date(1964,7,31)
>>>age=now-birthday
>>>age.days
14368
G. Python3 新手求助 如何处理中文日期 O(∩_∩)O谢谢
用re
importre
text=r'6月14日'
pat=r'd+'
results=re.findall(pat,text)
month,day=results
H. python3 时间转换
安装pytz模块,看不懂你的例子
importdatetime
importpytz
gmt=pytz.timezone('GMT')
eastern=pytz.timezone('US/Eastern')
time="Tue,12Jun201214:03:10GMT"
date=datetime.datetime.strptime(time,'%a,%d%b%Y%H:%M:%SGMT')
printdate
dategmt=gmt.localize(date)
printdategmt
dateeastern=dategmt.astimezone(eastern)
printdateeastern
I. python 时间列表
假设现有列表为a, 复制一个新列表为b。
用 b=a 这个语句,并不会复制出一个新的列表,只是复制了列表的地址。
无论是对a还是b进行修改,影响的都是同一个列表。
我们需要使用模块中的deep函数:
import
a=[1, 2, 3]
b=.deep(a)
这时的b才是一个列表,而不是列表的地址了。
J. python3有没有时间控件
#-*- coding:utf-8 -*-
import time
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("file:///C:/Users/hunk/Desktop/bootstrap-datetimepicker/bootstrap-datetimepicker/demo/index.html")
js = "$('input:eq(0)').removeAttr('readonly')" # jQuery,移除属性
# js = "$('input:eq(0)').attr('readonly',false)" # jQuery,设置为false
driver.execute_script(js)
input_datetime = driver.find_element_by_xpath('/html/body/div[1]/form/fieldset/div/div[1]/input[1]')
input_datetime.send_keys("2017-09-21")
input_datetime.click()
time.sleep(5)
driver.quit()
调用execute_script方法来执行js,来处理时间控件,然后我们可以直接输入日期。