python常见操作

扫码查看
1、数组for初始化

点击(此处)折叠或打开

  1. Y=[ 2.5,3.51,4.45,5.52,6.47,7.51]
  2. X = [x+1 for x in range(len(Y))]

2、字符串时间加减

点击(此处)折叠或打开

  1. A="2007-07-06"
  2. B="2007-07-26"
  3. def getDay_num(start,end):
  4.         x = datetime.datetime.strptime(end, '%Y-%m-%d')
  5.         x2 = datetime.datetime.strptime(start, '%Y-%m-%d')
  6.         v = x-x2
  7.         return v.days
  8. print getDay_num(A,B)
3、词典值为空判断
加上跟踪快速捕获错

点击(此处)折叠或打开

  1. dict = {}
  2. dict["a"]="bbbbbbbbbb"
  3. print dict['a']
  4. if not dict.has_key('b'):
  5.         print "addddddasdfdsaf"
4、python打印异常信息两种方式
1)、直接打印

点击(此处)折叠或打开

  1. try:
  2.  
  3.     # your code
  4.  except KeyboardInterrupt:
  5.  
  6.     print("quit")
  7.  
  8. except Exception as ex:
  9.      print("出现如下异常%s"%ex)
2)、用traceback模块打印
点击(此处)折叠或打开
  1. import traceback
  2. try:
  3.     2/0
  4. except Exception as e:
  5.     traceback.print_exc()

5、日志错误
加上跟踪快速捕获错

点击(此处)折叠或打开

  1. import logging
  2. import logging.handlers
  3. def LOG(str):

  4.         logger = logging.getLogger("fetchlogs") # 获取名为tst的logger
  5.         if not logger.handlers:
  6.                 ISOTIMEFORMAT='%Y%m%d'
  7.                 LOG_NAME= './fetchlogs/log_atr'
  8.                 LOG_NAME = LOG_NAME+ time.strftime( ISOTIMEFORMAT, time.localtime())
  9.                 LOG_NAME = LOG_NAME + ".txt"

  10.                 handler = logging.handlers.RotatingFileHandler(LOG_NAME, maxBytes = 5*1024*1024, backupCount = 5)
  11.                 fmt = '%(asctime)s - %(filename)s:%(lineno)s - %(name)s - %(message)s'

  12.                 formatter = logging.Formatter(fmt) # 实例化formatter
  13.                 handler.setFormatter(formatter) # 为handler添加formatter

  14.                 logger.addHandler(handler) # 为logger添加handler
  15.                 logger.setLevel(logging.DEBUG)


  16.         logger.info(str)

  17. def Log_exception(str):

  18.         logger = logging.getLogger("fetchlogserr") # 获取名为tst的logger
  19.         if not logger.handlers:
  20.                 ISOTIMEFORMAT='%Y%m%d'
  21.                 LOG_NAME= './fetchlogs/log_atr_err'
  22.                 LOG_NAME = LOG_NAME+ time.strftime( ISOTIMEFORMAT, time.localtime())
  23.                 LOG_NAME = LOG_NAME + ".txt"

  24.                 handler = logging.handlers.RotatingFileHandler(LOG_NAME, maxBytes = 5*1024*1024, backupCount = 5)
  25.                 fmt = '%(asctime)s - %(filename)s:%(lineno)s - %(name)s - %(message)s'

  26.                 formatter = logging.Formatter(fmt) # 实例化formatter
  27.                 handler.setFormatter(formatter) # 为handler添加formatter

  28.                 logger.addHandler(handler) # 为logger添加handler
  29.                 logger.setLevel(logging.DEBUG)


  30.         logger.exception(str)
6、数组降维度
#reshape函数当参数只有一个-1时表示将数组降为一维
np.ravel 降为一维数组

点击(此处)折叠或打开

  1. import numpy as np
  2. t = ar(range(10),dtype = 'float32')
  3. print t

  4. t2= t.reshape((10,1))
  5. print t2
  6. t3=t2.reshape(-1)
  7. print t3

  8. print np.ravel(t2)




11-06 16:28
查看更多