详细说明Python编辑技巧

开发 后端
Python编辑具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。它的名字来源于一个喜剧,也许最初设计Python这种语言的人并没有想到今天Python会在工业和科研上获得如此广泛的使用。

对***次接触到Python编辑的用户和学者来说,了解Python的概念是非常重要的,那么就先说一下什么是Python编辑,所谓Python语言:是一种使用非常广泛的计算机编程语言。

顾名思义,PIL(Python Imaging Library)是建立在Python编辑的基础上的,所以从前天开始下载了Python2.6,看了Python简明手册,在这个手册的***,作者建议初学者做这样一个程序,即实现:创建你自己的命令行 地址簿程序。

在这个程序中,你可以添加、修改、删除和搜索你的联系人(朋友、家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码)。这些详细信息应该被保存下来以便以后提取。

  1. #!/usr/bin/env python  
  2. # -*- coding: GBK -*-  
  3.  
  4. import urllib  
  5.  
  6. from sgmllib import SGMLParser  
  7.  
  8. class URLLister(SGMLParser):  
  9.     def reset(self):  
  10.         SGMLParser.reset(self)  
  11.         self.urls = []  
  12.           
  13.     def start_a(self, attrs):  
  14.         href = [v for k, v in attrs if k == 'href']  
  15.         if href:  
  16.             self.urls.extend(href)  
  17.       
  18. url = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGangJingShuoShenMo/' 
  19. sock = urllib.urlopen(url)  
  20. htmlSource = sock.read()  
  21. sock.close()  
  22. #print htmlSource  
  23. f = file('jingangjing.html', 'w')  
  24. f.write(htmlSource)  
  25. f.close()  
  26.  
  27. mypath = r'http://www.sinc.sunysb.edu/Clubs/buddhism/JinGangJingShuoShenMo/' 
  28.  
  29. parser = URLLister()  
  30. parser.feed(htmlSource)  
  31.  
  32. for url in parser.urls:  
  33.     myurl = mypath + url  
  34.     print "get: " + myurl  
  35.     sock2 = urllib.urlopen(myurl)  
  36.     html2 = sock2.read()  
  37.     sock2.close()  
  38.       
  39.     # 保存到文件  
  40.     print "save as: " + url  
  41.     f2 = file(url, 'w')  
  42.     f2.write(html2)  
  43.     f2.close()  
  44.      

我估计这里面关于一些基本的东西使用得很不好,一定还有更简捷***的方法。其实是用来练手的,我也没有太的期望做多好,程序运行后要求输入一个项目目录路径,生成的结果在D盘下的log.html文件中。

除了python自带的PIL包,还可以用ImageMagic,这样Gimp能够做什么,python也能做什么,写10来行程序,可以处理一大批图片,这样的快感不多了。3年前,我帮一JJ写程序处理卫星图片,大概是把卫星云图切成32*32的正方形,依次计算阙值然后再统计。

我用了一个星期的所有下午,pure c,差不多1500行代码,那个时候正在谈恋爱,智商比较低,在windows上面,装一个gcc,用editplus做编辑器,gdb+printf来调试,虽然***小有成就感,确很费了很多功夫,程序的核心部分,如果用Python编辑来做,短短几行就搞定。

从网上down一些文章,需要删掉里面的空白行;没有规则的大段数字,需要求和; 不同格式的头文件转换等等;这个用perl处理更好,3年前我也是这样作的,当我遇到python之后,我就彻底放弃了perl了。

perl很不错,基本上同样的功能,用python写代码会长一些,网络社区提供的各种perl的功能包也多一些,但是Larry Wall 是一个诗人,诗人的气质让perl的语法,在我们这些程序员眼里看起来很零乱。#t#

基本上2个星期不用,要拿perl干活,就得找本语法书重新看看。在linux下面还好,可以man一把,要是在windows上装一个ActivePerl,想查帮助还得打开Perl Core Documentation这个html文件。

一行一行的找,虽然脚本语言的帮助系统都不能.Net,Java等商业开发工具的帮助相提并论,但是python好歹也有一个chm文件,可以index的。Perl是给真正的hacker用的, 简洁,明快却是python的优点。要是作为一个专业的网管,选择perl没错的,至于普通程序员的小玩具,python更好使。

责任编辑:chenqingxiang 来源: CSDN
相关推荐

2010-02-23 10:14:29

Python 源代码

2009-12-14 17:57:21

NET 源码

2010-01-19 09:54:19

C++代码

2010-02-22 17:54:07

Python工具

2010-01-05 16:12:55

Javascript匿

2010-02-22 16:40:22

Python解释器

2009-12-28 09:26:09

ADO对象

2010-02-23 11:18:25

Python 操作符

2010-02-22 13:20:58

Python中文问题

2010-02-26 09:42:52

Python线程池

2010-01-07 16:09:04

学习JSON

2010-03-18 16:53:56

骨干交换机

2010-02-04 14:41:52

Android菜单类型

2014-09-16 09:57:56

INotifyProp

2009-12-08 09:00:14

WCF线程

2010-07-21 13:17:52

Perl文件读写

2010-03-09 10:11:34

Linux挂载命令

2009-12-07 18:06:46

WCF框架

2010-02-24 10:07:28

Python虚拟机

2010-02-24 15:18:51

Python社区
点赞
收藏

51CTO技术栈公众号