2005年06月20日 星期一 16:09
不敢! 列表中真正的高手太多了,我是正好手边儿有代码,所以 copy 一下子 对于好学的新同志迈向原则是 授之于渔,鄙视授之于鱼 的行为的 否则就是直接找人帮你干活的意思了……………… 实在大急的话,有时候是比较糊涂了,建议先整理好思路,确定主要问题, 查一下子手册,立即就会解决的! 也在北京的话,有机会一同参加活动哪! http://wiki.woodpecker.org.cn/moin/PythonCN BPUG 在准备ing... 在 05-6-20,Zhongwang Xu<zhongwangxu at gmail.com> 写道: > 谢谢高手的教导和鼓励,载你给的代码的基础上,我已经研究了一整天, > 还是没有任何进展。 > > 由于时间比较紧,着急要出东西,高手能否再给些提示。 > 比如,有什么函数实现无用行的过滤,以及怎样搜索有用的数据等。 > > 再次感谢了。 > > 听口气,高手像是北京的吧,有机会一定请你吃饭。 > > > On 6/20/05, Zoom Quiet <zoom.quiet at gmail.com> wrote: > > 编程的乐趣就在于自个儿可以自由的玩弄一切数据! > > 正是因为Python 可以快速的实现你的想法才值得去学习,研究的哪? > > 因为你的数据文本算是规范的, > > 而你要的数据都是以 > > Code : > > State : > > 打头的行,所以,只要设定条件,就可以让Py 自动抓取出所有你感兴趣的数据, > > 然后就可以自由的过滤,重组,输出了! > > > > 一切都在于你的思路,编程仅仅是未节了………… > > 我想我给出的代码足够说明问题了,你在其基础上尝试一下子,一定可以完成任务的 > > > > 在 05-6-20,Zhongwang Xu<zhongwangxu at gmail.com> 写道: > > > 非常感谢你的回复,由于我是初学编程,有很多东西还不是很明白。 > > > > > > 我现在的情况是,有这样一个数据文件,见附件data.txt, > > > 从中选择索要的数据,根据要求格式输出。输出例子见results.txt。 > > > 学习了你的回复,我知道如何处理数据行的数据, > > > 但是在其他解释行的数据,格式不太一样,我怎么处理和获得有效数据呢? > > > > > > > > > > > > -- > > [Time is unimportant, only life important!] > > > -- [Time is unimportant, only life important!]
2005年06月20日 星期一 17:31
疯狂注释版本!你尝试一下子?
import os,sys
# 读入信息为行数据数组
data = open("data.txt","r").readlines()
# 我们期望的数据容器
Matrix = {}
"""以长度为标记,分别对应的收集对应的数据组成为字典
{"长度":[
[Code 数据组..]
,[State 数据组..]
]
...
}
"""
# 假定数据文本都是规范的,就可以利用条件的固定出现次序来操作
loopKey = ""
for line in data:
if 40>len(line):
# 忽略数据太少的行
if "Main Loop:" in line:
# 获取长度信息
loopKey = line.split()[-2]
print loopKey
Matrix[loopKey]=[]
continue
elif "====="in line:
# 忽略修饰行
continue
elif "#1" in line:
# 忽略标题行
continue
elif "Event :" in line:
# 忽略事件数据行
continue
elif "Code :" in line:
# 开始记录数据到目标容器中
puredata = line.split()[2:]
#print puredata
Matrix[loopKey].append(puredata)
elif "State :" in line:
# 开始记录数据到目标容器中
puredata = line.split()[2:]
#print puredata
Matrix[loopKey].append(puredata)
else:
pass
# 现在我们有了嵌套的数据对象,打印检验一下
#print Matrix["4000"]
# 依照不同的长度分组,以各组数据的 Code 数据为标准进行检验归整数据
"""期待的数据结构类似:
{"长度":[
(Code数据,对应的State数据)
...]
}
即一个混合数组,元组,的数据字典
"""
result = {}
for key in Matrix:
# 对应的先创建结果的字典项
result[key]=[]
# 因为 Code与State是对应的数据,所以可以利用其相同的索引
Code = Matrix[key][0]
State = Matrix[key][1]
for i in range(0,len(Code)-1):
#print Code[i]
#print State[i]
if "0x0000"==Code[i]:
pass
else:
# 就是这样的利用!
result[key].append((Code[i],State[i]))
print result
# KO! 现在数据过滤明白了,按照意愿组织一下子以便输出,进一步进行图表制作
# 先在屏幕中测试
# 使用一个总输出变量记录在案
output = ""
for key in result:
for data in result[key]:
#print data
exp = key
exp += " "+data[0]
exp += " "+data[1]
#print exp
output += exp+"\n"
exp = ""
print output
# KO! 最后写到文件中!
open("ZqOut.txt","w").write(output)
在 05-6-20,Zoom Quiet<zoom.quiet at gmail.com> 写道:
> 不敢!
> 列表中真正的高手太多了,我是正好手边儿有代码,所以 copy 一下子
> 对于好学的新同志迈向原则是
> 授之于渔,鄙视授之于鱼 的行为的
> 否则就是直接找人帮你干活的意思了………………
>
> 实在大急的话,有时候是比较糊涂了,建议先整理好思路,确定主要问题,
> 查一下子手册,立即就会解决的!
>
> 也在北京的话,有机会一同参加活动哪!
> http://wiki.woodpecker.org.cn/moin/PythonCN
> BPUG 在准备ing...
>
>
> 在 05-6-20,Zhongwang Xu<zhongwangxu at gmail.com> 写道:
> > 谢谢高手的教导和鼓励,载你给的代码的基础上,我已经研究了一整天,
> > 还是没有任何进展。
> >
> > 由于时间比较紧,着急要出东西,高手能否再给些提示。
> > 比如,有什么函数实现无用行的过滤,以及怎样搜索有用的数据等。
> >
> > 再次感谢了。
> >
> > 听口气,高手像是北京的吧,有机会一定请你吃饭。
> >
> >
> > On 6/20/05, Zoom Quiet <zoom.quiet at gmail.com> wrote:
> > > 编程的乐趣就在于自个儿可以自由的玩弄一切数据!
> > > 正是因为Python 可以快速的实现你的想法才值得去学习,研究的哪?
> > > 因为你的数据文本算是规范的,
> > > 而你要的数据都是以
> > > Code :
> > > State :
> > > 打头的行,所以,只要设定条件,就可以让Py 自动抓取出所有你感兴趣的数据,
> > > 然后就可以自由的过滤,重组,输出了!
> > >
> > > 一切都在于你的思路,编程仅仅是未节了…………
> > > 我想我给出的代码足够说明问题了,你在其基础上尝试一下子,一定可以完成任务的
> > >
> > > 在 05-6-20,Zhongwang Xu<zhongwangxu at gmail.com> 写道:
> > > > 非常感谢你的回复,由于我是初学编程,有很多东西还不是很明白。
> > > >
> > > > 我现在的情况是,有这样一个数据文件,见附件data.txt,
> > > > 从中选择索要的数据,根据要求格式输出。输出例子见results.txt。
> > > > 学习了你的回复,我知道如何处理数据行的数据,
> > > > 但是在其他解释行的数据,格式不太一样,我怎么处理和获得有效数据呢?
> > > >
> > > >
> > >
> > >
> > > --
> > > [Time is unimportant, only life important!]
> > >
> >
>
> --
> [Time is unimportant, only life important!]
>
--
[Time is unimportant, only life important!]
Zeuux © 2025
京ICP备05028076号