您的位置:首页 > 编程语言 > Python开发

滴水穿石--python 学习笔记--基础

2012-12-12 13:18 489 查看
python基础

1、语句和语法

python语句中有一些基本规则和特殊字符:

井号(#)表示之后的字符为python注释
换行(\n)是标准的行分隔符(通常一个语句一行)
反斜线(\)继续上一行

分号(;)将两个语句连接在一行

冒号(:)将代码块的头和体分开

语句(代码块)用缩进块的方式体现

不同的缩进深度分隔不同的代码块

python文件以模块的形式组织

2、变量赋值
赋值运算符,在python语言中,等号(=)是主要的赋值运算符。如:

anInt = 12

aString = 'cat'

aFloat = 2.14

anotherString = 'shop' + 'ping'

注:赋值并不是直接将一个值赋给一个变量,在python语言中,对象是通过引用传递的。

链式赋值:y = x = x + 1;增量赋值:x = x + 1 或者 x += 1;多重赋值:x = y = z = 1(在上面的例子中,一个值为 1 的整数对象被创建,该对象的同一个引用被赋值给 x、y 和z 。也就是将一个对象赋给了多个变量); 多元赋值:x, y, z = 1, 2, 'a string' 或者 (x, y, z) = (1, 2, 'a string')

3、标识符
合法标识符

▶ 第一个字符必须是字母或者下划线(_)
▶ 剩下的字符可以是字母和数字或者下划线
▶ 大小写敏感
关键字





内建:python可以再任何一级代码使用的“内建”的名字集合,这些名字可以由解释器设置或使用。

专用下划线标识符:python用下划线作为变量前缀和后缀指定的特殊变量。如下总结:

▶ _xxx 不用'from module import *'导入
▶ __xxx__ 系统定义名字
▶ __xxx 类中的私有变量名
注:避免用下划线作为变量名的开始

4、内存管理
变量和内存管理的细节包括:

▶变量无需事先声明
▶变量无需指定类型
▶程序员不用关心内存管理
▶变量名会被“回收”
▶del语句能够直接释放资源
1)变量定义:在python中,无需显式变量声明语句,变量在第一次被赋值时自动声明。和其他大多数语言一样,变量只有被创建和赋值后才能被使用。

2)动态类型:在python中不但变量名无需事先声明,而且也无需类型声明,在程序中,对象的类型和内存所占用的都是运行时确定的。尽管代码被编译成字节码,python仍然是一种解释型语言。在创建也就是赋值时,解释器会根据语法和右侧的操作数来决定新对象的类型,在对象创建后,一个该对象的应用会被赋值给左侧的变量。

3)内存分配:Python 解释器承担了内存管理的复杂任务, 这大大简化了应用程序的编写。你只需要关心你要解决的问题,至于底层的事情放心交给 Python 解释器去做就行了
4)引用计数:在python中使用了引用计数这一简单技术,一个内部跟踪变量称为一个引用计数器,当这个对象不再需要时,这个对象的引用计数为0时,它被垃圾回收。

对象的引用计数增加的情况:

▶对象被创建
▶或另外的别名被创建
▶或被作为参数传递给函数
▶或称为容器对象的一个元素
对象的引用计数减少的情况:

▶一个本地引用离开了其作用范围。
▶对象的别名被显式的销毁
▶对象的一个别名被赋值给其他的对象
▶对象被从一个窗口对象移出
▶窗口对象本身被销毁
del 语句

del语句会删除对象的一个引用,语法:del obj1[, obj2[, ....objN]],例如:del y会产生两个结果(1)从现在的名字空间中删除y(2)改对象的引用对象减1。

5)垃圾收集:Python 的垃圾收集器实际上是一 个引用计数器和一个循环垃圾收集器。 当一个对象的引用计数变为 0,解释器会暂停,释放掉这个对象和仅有这个对象可访问(可到达)的其它对象。作为引用计数的补充, 垃圾收集器也会留心被分配的总量很大(及未通过引用计数销毁的那些)的对象。在这种情况下, 解释器会暂停下来, 试图清理所有未引用的循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: