Chinaunix首页 | 论坛 | 博客
  • 博客访问: 40499
  • 博文数量: 8
  • 博客积分: 81
  • 博客等级: 民兵
  • 技术积分: 80
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-10 16:38
文章分类

全部博文(8)

文章存档

2012年(2)

2011年(6)

我的朋友
最近访客

分类:

2011-05-07 22:41:55



双引号中的字符串与单引号中的字符串的使用完全相同

Python把在程序中用到的任何东西都称为 对象 ,就每一个东西包括数、字符串甚至函数都是对象这一点来说,Python是极其完全地面向对象的。

使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。

同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块。

没有global语句,是不可能为定义在函数外的变量赋值的。

只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。这是因为赋给形参的值是根据位置而赋值的。

没有返回值的return语句等价于return None。

使输入模块更加快一些,一种方法是创建 字节编译的文件 ,这些文件以.pyc作为扩展名。

一般说来,应该避免使用from..import而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。

为了使用继承,我们把基本类的名称作为一个元组跟在定义类时的类名称之后。然后,我们注意到基本类的__init__方法专门使用self变量调用,这样我们就可以初始化对象的基本类部分。这一点十分重要——Python不会自动调用基本类的constructor,你得亲自专门调用它。

如果在继承元组中列了一个以上的类,那么它就被称作 多重继承 。

exec语句用来执行储存在字符串或文件中的Python语句。exec 'print "Hello World"'

eval语句用来计算存储在字符串中的有效Python表达式。>>> eval('2*3')

列表综合,可以从一个已有的列表导出一个新的列表。例如listtwo = [2*i for i in listone if i > 2]

当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1, arg2)——这就是self的原理了。

__init__方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的 初始化 。
还有一个特殊的方法__del__,它在对象消逝的时候被调用。对象消逝即对象不再被使用,它所占用的内存将返回给系统作它用。__del__方法运行,但是很难保证这个方法究竟在 什么时候 运行。如果你想要指明它的运行,你就得使用del语句。

当要使函数接收元组或字典形式的参数的时候,有一种特殊的方法,它分别使用*和**前缀。这种方法在函数需要获取可变数量的参数的时候特别有用。>>> def powersum(power, *args):

lambda语句被用来创建新的函数对象,并且在运行时返回它们。

repr函数和反引号用来获取对象的可打印的表示形式。你可以通过定义类的__repr__方法来控制你的对象在被repr函数调用的时候返回的内容。 `i`,repr(i)

列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢?序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。

Python的for循环从根本上不同于C/C++的for循环。for i in range(0,5)



阅读(1069) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~