文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Python应用:文件内容分析:纵向组合列表

Python应用:文件内容分析:纵向组合列表

时间:2006-12-25  来源:wibrst

这是上周四没发成功的帖子。
    现在工作的东西需要把策划文档中的Excel内容按列形成数组。考虑到有几个像这样的独立部分,并且以后修改的可能性也很大,正好可以用Python来方便地完成这个任务。
举个例子,比如:原来的文件是从Excel拷贝出来存为 parseWordGroup.txt,内容:
鹅 毛 河
南 方 鸡
江 南 人
青 草 鹅
青 色 方
红 花 子
花 草 色
则会生成result.txt:
c1Array = ["鹅","南","江","青","青","红","花"]
c2Array = ["毛","方","南","草","色","花","草"]
w0Array = ["河","鸡","人","鹅","方","子","色"]
以下是程序源码,各位路过如果有空,请您留个改进意见啥的哦。
# colsToArrays.py
# encoding:gb2312

import re
import types

# 数据文件
sFrom='parseWordGroup.txt'
sResult='result.txt'
# 列数
iCol=3

# 建立目标数组
aProduce=[]
for i in range(0,iCol):
aProduce.append([])
print len(aProduce)

# 文件读打开
fFrom=file(sFrom,'r')
# 析出分行列表
aFrom=fFrom.readlines()

nLine=-1
# 分别取出对应的数组
for l in aFrom:
++nLine
m=re.search('\s*'.join(['(\S\S)']*3),l)
if type(m)!=types.NoneType: # 可以匹配
for i in range(0,iCol):
aProduce[i].append(m.group(i+1))

# 对目标数组取标识名
def getTgtAryId(i):
if i<2:
return "c"+str(i+1)
else:
return "w"+str(i-2)

# 将结果写入文件
fRs=file(sResult,'w')
for i in range(0,iCol):
sLine=getTgtAryId(i)+'Array = ["'\
+'","'.join(aProduce[i])+'"]'
fRs.write(sLine+'\n')
fRs.close()
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载