您的位置:首页 > 编程语言 > Python开发

Python for Data Analysis(4)

2016-09-12 10:11 399 查看

时期和时间

内置的datatime模块提供了datatime、date以及time等类型,其中datetime用的是最多的,它合并保存了date and time中的信息

from datetime import datetime, date, time


dt=datetime(2016,9,12,8,53,40)

dt.date()


datetime.date(2016, 9, 12)


dt.time()


datetime.time(8, 53, 40)


dt.day


12


dt.minute


53


strftime方法用于将datetime格式化为字符串

strptime是将字符串转化为datetime对象

dt.strftime('%m/%d/%y %H:%M')


'09/12/16 08:53'


datetime.strptime('20091212','%Y%m%d')


datetime.datetime(2009, 12, 12, 0, 0)


#作时间序列分析时进行聚合或分组时,可能需要替换datetime中的一些字段
dt.replace(minute=0,second=0)


datetime.datetime(2016, 9, 12, 8, 0)


#另外datetime对象可以相减,得出一个datetime.timedelta类型:
dt2=datetime(2016,1,1,12,12)


delta=dt-dt2
delta


datetime.timedelta(254, 74500)


type(delta)


datetime.timedelta


#可以相减,自然也可以把delta加到一个datetime上
dt3=datetime(2011,12,11,12,1) #精确到秒


dt4=dt3+delta
dt4


datetime.datetime(2012, 8, 22, 8, 42, 40)


print dt3+delta


2012-08-22 08:42:40


循环中的continue、break、pass

continue关键字用于使FOR循环提前进入下一次迭代,即跳过continue后代码块的剩余部分

break是用于完全退出当层循环

pass是可以理解为空的代码占位符,多被用于还没有任何功能的代码块中

#continue的例子,下面代码是跳过None值的部分:

sequence=[1,2,None,1,3,None,39]
total=0
for  value in sequence:
if value is None:
continue
total+=value #注意这句的位置,是不可以在IF中的,因为if里只有None才会执行
print total


46


#break,下面的例子,列表求和,碰到5就退出
sequence=[1,2,3,4,5]
total=0
for value in sequence:
if value==5:
break
total+=value
print total


10


#pass
x=22
if x<0:
print 'negative'
elif x==0:
#实现什么功能?还没有想好
pass
else:
print 'positive'


positive
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python