见贤思小齐,知足常乐呵

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1. python 有专门的csv包,直接导入即可。

import csv;

2. 直接使用普通文件的open方法

csv_reader=open("e:/python/csv_data/log.csv" , 'r')
data=[]
for line in csv_reader:
    data.append(list(line.strip().split('|')))

for line in data:
    print(line)

3. 使用csv.reader & writer,返回迭代类型

import sys;

reload(sys)
sys.setdefaultencoding("utf-8");
csv_reader=csv.reader(file('E:\\Python\CSV_data\log.csv','rb'))
for row in csv_reader:
    print(row)

writer=csv.writer(file('E:\\Python\CSV_data\log_write.csv','wb'))
writer.writerow(['name','id','comment'])
lines=[range(3) for i in range(5)]
for line in lines:
    writer.writerow(line)

4.  使用 csv.DictReader & DictWriter, 返回dict 字典类型。

reader1=csv.DictReader(file('E:\\Python\CSV_data\women_write.csv','rb'))

参考

 

5. Md5 加密输出

import csv
import hashlib

m=hashlib.md5()

csvwriter=csv.writer(file('E:\\Python\CSV_data\md5_write.csv','wb'))
csvwriter.writerow(['created','md5'])

csvreader=open('E:\\Python\CSV_data\original.csv','r')
for line in csvreader:
    data=[]
    data.append(line.strip().split('|')[0])
    m.update(line.strip().split('|')[1])     #对分隔符的第二个字段加密
    encodeStr=m.hexdigest()
    data.append(encodeStr)
    data.append(line.strip().split('|')[2])
    csvwriter.writerow(data)

6. 求两个文件的交集、并集和差集

以行为单位求两个文件的交、并、差:

s1 = set(open('a.txt','r').readlines()) 
s2 = set(open('b.txt','r').readlines()) 
print 'ins: %s'%(s1.intersection(s2)) 
print 'uni: %s'%(s1.union(s2)) 
print 'dif: %s'%(s1.difference(s2).union(s2.difference(s1)))

 

posted on 2017-05-03 18:25  Suckseedeva  阅读(3696)  评论(1编辑  收藏  举报