双引号中的字符串与单引号中的字符串的使用完全相同
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)
阅读(1401) | 评论(0) | 转发(1) |