step1 introduction to python
A.关于 Error Handling部分:
可以用于对异常数据,缺失数据进行处理
B.关于正则表达式regular expression部分:
主要描述了
re.search()(查找能匹配的表达式)
re.sub()(将匹配的表达式替换成其他字符串)
re.findall()(查找字符串中所有包含表达式的子串,返回一个子串list)
三个函数,用于数据处理
C.
关于time 模块部分:
time.time()返回当前linux时间戳(从1970年1月1日开始过了多少秒)
time.gmtime() 返回一个struct_time的类,包含:
tm_year: The year of the timestamp
tm_mon: The month of the timestamp (1-12)
tm_mday: The day in the month of the timestamp (1-31)
tm_hour: The hour of the timestamp (0-23)
tm_min: The minute of the timestamp (0-59)
关于datetime模块:
datetime模块有datetime类,即datetime.datetime,包含有这些性质:
>>year month day hour minute second microsecond
datetime类包含方法datetime.now()返回datetime类的实例,包含上面这些性质表示当前时间
本身定义datetime实例需要传入参数,如:march3 = datetime.datetime(year = 2010, month = 3, day = 3)
该datetime实例可以对时间格式进行定制,包含方法如:march3.strftime("%b %d, %Y")即"Mar 03, 2010" (查找documentation对格式进行定制)
反之,将所给的时间字符串转换为datetime类,即strptime方法如:datetime.datetime.strptime("Mar 03, 2010", %b %d, %Y") (与strftime配合使用)
其次,datetime模块还有timedelta类,可以用于时间的加减,包含有这些性质(注意s):
weeks days hours minutes seconds milliseconds microseconds
例:计算从现在开始三星期两天后的时间:
time_now=datetime.datetime.now()
diff=datetime.timedelta(week=3,day=2)
time_after=time_now+diff
PS:注意区别,time模块本来就包含time(),gmtime()的方法。而datetime模块是在datetime类里面才包含now()的方法
可以将linux时间戳时间转换为可读时间datetime实例:datetime_object = datetime.datetime.fromtimestamp(1433213314.0)
这一部分,csv文件的读取方式主要是直接读取,和用csv.reader读取两种,都要转化为list of list 的类型:
>>1.
f=open("xxx.csv",'r')
data=f.read() #此时还只是一个大的string格式
data_list=data.split('\n')
data_list_1=[]
for row in data_list:
data_list_1.append(row.split(','))
从而最终得到一个list of list 的格式
>>2.
import csv
f=open("xxx.csv",'r')
data=list(csv.reader(f))
直接得到一个list of list 的格式
后面会讲到用numpy和pandas的读取方式,更简洁也更易操作