URN Logo
UNIX Resources » Linux » China Linux Forum » Python 编 程 » 8 » 如何提高Python处理文本文件的速度
announcement 声明: 本页内容为中国Linux论坛的内容镜像,文章的版权以及其他所有的相关权利属于中国Linux论坛和相应文章的作者,如果转载,请注明文章来源及相关版权信息。
Resources
China Linux Forum(finished)
Linux Forum(finished)
FreeBSD China(finished)
linuxforum.net
  业界新闻与评论
  自由软件杂谈
  IT 人生
  Linux软件快递
  翻译作坊
  Linux图书与评论
  GNU Emacs/XEmacs
  Linux 中文环境和中文化
  Linux桌面与办公软件
  Linux 多媒体与娱乐版
  自由之窗Mozilla
  笔记本电脑上的Linux
  Gentoo
  Debian 一族
  网络管理技术
  Linux 安装与入门
  WEB服务器和FTP服务器
  域名服务器和邮件服务器
  Linux防火墙和代理服务器应用
  文件及打印服务器
  技术培训与认证
  Linux内核技术
  Linux 嵌入技术
  Linux设备驱动程序
  Linux 集群技术
  LINUX平台数据库
  系统和网络安全
  CPU 与 编译器
  系统计算研究所专栏
  Linux下的GUI软件开发
  C/C++编程版
  PHP 技 术
  Java&jsp技术
  Shell编程技术
  Perl 编 程
  Python 编 程
  XML/Web Service 技术
  永远的Unix
  FreeBSD世界
   
如何提高Python处理文本文件的速度
 
 
 
 
 
 
 
 
 
Subject: 如何提高Python处理文本文件的速度
Author: jianghua1213    Posted: 2005-07-05 09:47    Length: 827 byte(s)
[Original] [Print] [Top]
如何提高Python处理文本文件的速度

有如下三个文本文件,内容举例说明如下:
ref_col1.del:
A1|IDA1
A2|IDA2
A3|IDA3

ref_col2.del:
B1|IDB1
B2|IDB2
B3|IDB3

fact_dsn.del:
A1|B1|Name1|Address1|Tel1
A2|B2|Name2|Address2|Tel2
A3|B3|Name3|Address3|Tel3
A4|B4|Name4|Address4|Tel4
A5|B5|Name5|Address5|Tel5
A6|B6|Name6|Address6|Tel6

ref_col1.del与ref_col2.del文件的内容不会很多,只是转换fact_dsn.del时的一些参
照,fact_dsn.del有大量数据,可能有上千万行,现在想根据前两个文件的内容进行参
照,来修改fact_dsn.del文件中的前两个字段。请各位大侠支招,如何去提高文件处理
的速度?
谢谢!
----
成功的捷径在于模仿
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: limodou    Posted: 2005-07-05 11:09    Length: 37 byte(s)
[Original] [Print] [Top]
建 议使用数据库,已经在邮件中回复了。
----
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: jianghua1213    Posted: 2005-07-05 11:11    Length: 56 byte(s)
[Original] [Print] [Top]
数据库当然没问题!
想测试Python的文本处理能力!
----
成功的捷径在于模仿
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: passworld    Posted: 2005-07-05 12:38    Length: 558 byte(s)
[Original] [Print] [Top]
测试?Python的速度从来都不是强项,不用测试也知道。

如果是真正的写程序,建议使用 Python profiler 发现你具体程序的的热点,针对热点进行优化,甚至可以把某些热点用 C 扩展处理。如果还不行,那就是你的实现方法的问题,在算法优化上下工夫。

一般的步骤是先优化算法,然后优化具体实现。但是简单的方式就只在实现上进行优化,达到设计要求就行了。无限的追求完美是浪费时间的事,有时间浪费当然也无所谓。

要是测试,比赛,满足自尊心,那你就自己玩吧,肯定可以到处找到零碎的地方可以提高速度的,找到了别忘了告诉大家。
----
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: gutounan    Posted: 2005-07-12 17:10    Length: 154 byte(s)
[Original] [Print] [Top]
>>建议使用 Python profiler 发现你具体程序的的热点,针对热点

Python profiler是什么东东?
资料好像很少呀
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: passworld    Posted: 2005-07-12 18:36    Length: 560 byte(s)
[Original] [Print] [Top]
看 Python 手册里有关 profiler 的章节。调试程序运行效率的一个手段,可以列出程序运行时在每个步骤消耗的时间,然后程序员可以针对这些地方进行优化。很标准的编程工具,大多数语言都有这个工具。

有一句名言叫做 "Premature optimization is the root of all evil." : 时机还不成熟的优化,是万恶之源。

优化前,要先找到需要优化的地方,这里 Profiler 就发挥了它的作用。对于那些只占整体耗时 1% 的地方,你再无限优化,也只是提高整体程序效率的 1% ,浪费自己的时间。这就是盲目优化,也是不成熟的优化的一种。


----
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: gutounan    Posted: 2005-07-12 21:04    Length: 132 byte(s)
[Original] [Print] [Top]
原来如彼。。。。
请教一个非python的问题
gcc是否有这种工具呢?
平时都要用到gcc所以很关心这个问题
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: passworld    Posted: 2005-07-12 23:05    Length: 137 byte(s)
[Original] [Print] [Top]
gcc 一向有 gprof 配合 gcc -pg 使用,看 gcc 说明。

最近一年开始流行 oprofile ,更方便,也更有效率。

----
[Original] [Print] [Top]
Subject: Re: 如何提高Python处理文本文件的速度
Author: gutounan    Posted: 2005-07-13 10:19    Length: 77 byte(s)
[Original] [Print] [Top]
谢谢
刚才试了一下很好用
而且连aix的编译器都支持呢
[Original] [Print] [Top]
« Previous thread
list -> str, str->list 怎么做?
Python 编 程
8
Next thread »
如何知道当前.py脚本程序所在目录?
     

Copyright © 2007 UNIX Resources Network, All Rights Reserved.      About URN | Privacy & Legal | Help | Contact us
备案序号: 京ICP备05006143    webmaster: webmaster@unixresources.net
This page created on 2008-07-17 04:11:10, cost 0.069202899932861 ms.