1:process.py
#coding:utf-8
__author__ = 'jinduo'
import sys
def C_area(poi_file,filename):
#创建字典 C_POI文件,guid:name
dict_poi = {}
dict_bid_null ={}
dict_name_wrong={}
f_C_POI = open(poi_file)
while True:
line = f_C_POI.readline()
if line:
attrs = line.split('\t')
if(len(attrs)>=3):
dict_poi[attrs[0]] = attrs[2]
else:
f_C_POI.close()
break
f = open(filename, "r")
while True:
line = f.readline()
if line:
attrs = line.split(',')
#判断bid是否为空,若为空,则把guid和name加入字典中
bid = attrs[21].strip("\"")
if len(bid) < 5:
dict_bid_null[attrs[0]] = attrs[3]
#若不为空,则判断两个那么是否相等,不相等,则加入列表
else:
if(dict_poi.has_key(attrs[21])):
if attrs[3]!= dict_poi[attrs[21]]:
dict_name_wrong[attrs[0]] = [attrs[3],dict_poi[attrs[21]],attrs[21]]
else:
f.close()
break
print "total null_bid number:%d" %len(dict_bid_null)
print "bid is null:guid name"
for key ,values in dict_bid_null.items():
print key+"\t"+values
print "total name_wrong number:%d" %len(dict_name_wrong)
print "name wrong:guid name ,fa_name,fa_guid"
for key,values in dict_name_wrong.items():
print key+"\t"+values[0]+"\t"+values[1]+"\t"+values[2]
if __name__ == "__main__":
print "please input the path of C_POI.mid and C_CommunityArea.mid"
C_area(sys.argv[1],sys.argv[2])
笔记:
1,测试机和本地之间的传输命令:rz:传人,sz+文件名:传出
2,python定向输出(打印出的信息到该文件中),在linux环境下执行命令
python 文件名.py 命令行参数 > 指定文件名
当文件名不存在时,创建,当存在时,重写入该文件
3,execl表格复制粘贴时,默认按制表格式分开“\t“,所以注意输出的格式
4,分割时,若是按符号分割,记得加转义字符,例如,bid = attrs[21].strip(“\”“)
一定不要怕错误,调试的时候才能更好的掌握一门语言,遇到不会的,不懂得一定要多问小伙伴!加油!