首页 > 代码库 > python大杂烩

python大杂烩

1,浮点数。python中的计算

(转载自知乎)

Python 2.7 中, a / b = c,如果 a 和 b 均为 integer,则结果 c 也会被丢掉小数部分然后变成 integer 例如:5 / 2 = 2,若要准确的小数结果,将 a 或 b 变为 floating-point number 即可:5.0 / 2 = 2.5 5 / 2.0 = 2.5;Python 3 中则不同:5 / 2 = 2.5 。

所以如果遇到float(a)/b

输出的print “%.3f”%c, f表示浮点数,然后.3表明小数后3位

 

2.判断一个列表是否为空

 

判断一个 list 是否为空

(转载自http://blog.csdn.net/yelbosh/article/details/7558981)

传统的方式:

if len(mylist):    # Do something with my listelse:    # The list is empty

由于一个空 list 本身等同于 False,所以可以直接:

if mylist:    # Do something with my listelse:    # The list is empty

3.python中的时间处理
转自http://www.yihaomen.com/article/python/330.htm

用 Python 做项目时,经常会遇到与日期转换相关,日期计算相关的功能,动不动就要去查python手册,感觉麻烦,因此把自己常用的一些东西,总结了一下,总体说来到目前为止遇到如下一些需求:
1. 用python 把datetime转成字符串
2. 用python 把字符串转成datetime
3. 用python 把字符串转成时间戳形式
4. 用python 把时间戳转成字符串形式
5. 用python 把把datetime类型转外时间戳形式
6. 用python 计算两个日期之间的差
7. 用python 计算两个日期的 timestamp 差值
8. 用python 比较两个日期的大小
9. 指定日期加上 一个时间段,天,小时,或分钟之后的日期 
下面是测试代码:
 
#coding:utf-8‘‘‘base on python 2.7Created on 2012-12-14@author: yiahomen.com‘‘‘import datetimeimport timedef datetime_toString(dt):    """把datetime转成字符串"""    return dt.strftime("%Y-%m-%d")def string_toDatetime(string):    """把字符串转成datetime"""    return datetime.datetime.strptime(string, "%Y-%m-%d")def string_toTimestamp(strTime):    """把字符串转成时间戳形式"""    return time.mktime(string_toDatetime(strTime).timetuple())def timestamp_toString(stamp):    """把时间戳转成字符串形式"""    return time.strftime("%Y-%m-%d-%H", time.localtime(stamp))def datetime_toTimestamp(dateTime):    """把datetime类型转外时间戳形式"""    return time.mktime(dateTime.timetuple())def substract_DateTime(dateStr1,dateStr2):    """ 返回两个日期之间的差 """    d1=string_toDatetime(dateStr1)    d2=string_toDatetime(dateStr2)    return d2-d1def substract_TimeStamp(dateStr1,dateStr2):    """ 两个日期的 timestamp 差值 """    ts1= string_toTimestamp(dateStr1)    ts2= string_toTimestamp(dateStr2)    return ts1-ts2def compare_dateTime(dateStr1,dateStr2):    """两个日期的比较, 当然也可以用timestamep方法比较,都可以实现."""    date1 = string_toDatetime(dateStr1)    date2 = string_toDatetime(dateStr2)    return date1.date()>date2.date()def dateTime_Add(dateStr,days=0,hours=0,minutes=0):    """ 指定日期加上 一个时间段,天,小时,或分钟之后的日期 """    date1= string_toDatetime(dateStr)    return date1+datetime.timedelta(days=days,hours=hours,minutes=minutes)if __name__==‘__main__‘:    print substract_DateTime(‘2012-12-12‘,‘2012-01-01‘)    #-346 days, 0:00:00    print substract_DateTime(‘2012-12-12‘,‘2012-01-01‘).days    #-346    print substract_TimeStamp(‘2012-12-12‘,‘2012-01-01‘)    #29894400.0        print substract_TimeStamp(‘2012-12-12‘,‘2012-01-01‘)/(24*60*60),‘天‘    #346.0 天    print compare_dateTime(‘2012-12-12‘,‘2012-01-01‘)    #True    print dateTime_Add(‘2012-12-12‘,days=10,hours=5,minutes=10)    #2012-12-22 05:10:00

  



2013-1-3日备注:根据当前日期,对年月进行加减的方法
例子:
import calendar, datetimedef increment_month(when):    days = calendar.monthrange(when.year, when.month)[1]    return when + datetime.timedelta(days=days)now = datetime.datetime.now()print ‘It is now %s‘ % nowprint ‘In a month, it will be %s‘ % increment_month(now)

  

 

python大杂烩