今天捣鼓了以下Python的urllib模块,闲着无事,下个命令行下的下载器程序。

  通过调用模块的urlretrieve方法获取远程文件,并且用自定义函数来处理下载过程中的显示问题。

  

Read the rest of this entry

, ,

  常量是一经定义,便不可再更改再定义的!在Python中,并没有像C语言等其他语言一样,提供定义常量的const保留字。不过可以过自定义一个类来实现!
  参考《Python_cookbook》中的代码,新建一个模块const.py:

Read the rest of this entry

,

学习Python
Python编程革命

  Tkinter———— Python默认的图形界面接口。
  Tkinter是一个和Tk接口的Python模块,Tkinter库提供了对Tk API的接口,它属于Tcl/Tk的GUI工具组。Tcl/Tk是由John Ousterhout发展的书写和图形设备。Tcl(工具命令语言)是个宏语言,用于简化shell下复杂程序的开发,Tk工具包是和Tcl一起开发的,目的是为了简化用户接口的设计过程。Tk工具包由许多不同的小部件,如一个按钮、一个滚动条等。通过Tk提供的这些小部件,我们就可快速地进行GUI开发。Perl、Scheme等语言也利用Tk库进行GUI开发。Tkinter是跨平台,在各种平台下都能使用。
  Python Imaging Library(PIL)————python提供强大的图形处理的能力,并提供广泛的图形文件格式支持,该库能进行图形格式的转换、打印和显示。还能进行一些图形效果的处理,如图形的放大、缩小和旋转等。是Python用户进行图象处理的强有力工具。
  Pmw(Python megawidgets)Python超级GUI组件集————一个在python中利用Tkinter模块构建的高级GUI组件,每个Pmw都合并了一个或多个Tkinter组件,以实现更有用和更复杂的功能。
  PyXML———— 用Python解析和处理XML文档的工具包,包中的4DOM是完全相容于W3C DOM规范的。它包含以下内容:
  xmlproc: 一个符合规范的XML解析器。
  Expat: 一个快速的,非验证的XML解析器。 还有其他
  和他同级别的还有 PyHtml PySGML

Read the rest of this entry

, ,

以动手实践为荣 , 以只看不练为耻;
以打印日志为荣 , 以单步跟踪为耻;
以空格缩进为荣 , 以制表缩进为耻;
以单元测试为荣 , 以人工测试为耻;

以模块复用为荣 , 以复制粘贴为耻;
以多态应用为荣 , 以分支判断为耻;
以Pythonic为荣 , 以冗余拖沓为耻;
以总结分享为荣 , 以跪求其解为耻。

python中,要知道一个类有哪些属性,有两种方法。

先定义一个类:
>>> class AClass(object):
… ‘AClass class definition’
… version = 1.1
… def showV(self):
… print AClass.version

使用内建的dir()函数:dir(AClass)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'showV', 'version']

通过访问类的特殊类属性__dict__: print AClass.__dict__

{‘__module__’: ‘__main__’, ‘version’: 1.1000000000000001, ‘__dict__’: , ‘showV’: , ‘__weakref__’: , ‘__doc__’: ‘AClass class definition’}

所有的类属性都具有特殊类属性,如__doc__,__dict__,__name__等。

另外可用vars()函数接受类参数,来显示类的属性: vars(AClass)
{‘__module__’: ‘__main__’, ‘version’: 1.1000000000000001, ‘__dict__’: , ‘showV’: , ‘__weakref__’: , ‘__doc__’: ‘AClass class definition’}

Read the rest of this entry

,

python的类方法需要类作为第一个参数传入。通常用cls作为变量名字。而静态方法不需要self参数。并且它们在经典类和新式类中都可以调用。

class TestStaticMethod(object):
@staticmethod
def foo():
print ‘calling static method…’

class TestClassMethod(object):
@classmethod
def foo(cls):
print ‘the class’, cls.__name__, ‘is calling the class method foo()..’

In [7]: TestClassMethod.foo()
the class TestClassMethod is calling the class method foo()..

Read the rest of this entry