这下面有很大一部分来自《Python核心编程(中文第二版)》这本书。
print语句调用str()函数显示对象,而交互式解释器则调用repr()函数来显示对象;
_在解释器中表示最后一个表达式的值
Python不支持自减1和自加1
for item in [1,2,2,3]:
print item, 后面加一个逗号 可以使得输出在一行
打开并读取文件:
filename = raw_inpurt('Enter your file name:')
fobj = open(filename,'r')
for eachLine in fobj:
print eachLine,
fobj.close
当一个类实例被创建的时候,__init__()方法会自动执行,这个方法是在类实例创建完毕后才执行,这个方法并不创建实例,他的目的只是进行一些必要的初始化工作。
_xxx 不用'from module import *'导入
_xxx_ 系统定义名字
_xxx 类中的私有变量名
如果程序是被导入 __name__的值就是模块的名字
如果程序是被直接执行 __name__的值就是'__main__'
代码对象是编译过的的Python源代码片段,是可执行对象(通过exec或eval()内建函数)。通过内建函数compile()可以得到代码对象。
对一个对象进行浅拷贝其实是新创建了一个类型跟原对象一样,其内容是原来对象元素的引用,换句话说,这个拷贝的对象本身是新的,但是它的内容不是。( copy.deepcopy() )
python2.1及之前的版本,只能使用经典对象来实现面向对象编程。新型对象内建了Object对象,该对象是内建类型和新型对象的父类。如果要定义新型对象就必须继承Object对象。新型对象提供了对类方法和静态方法的支持。
python的构造函数、析构函数、私有属性或方法都是通过名称约定区分的。
①如果函数、方法、属性以两个下划线开始,则表示私有类型;
②没有使用两个下划线则表示共有类型。
python没有保护类型的修饰符。
python的属性分为实例属性和静态属性。实例属性是以self作为前缀的属性。
python中的类和示例对象都可以访问类属性,而Java终的静态变量只能被类调用。
直接访问私有变量的方式:instance._classname__attribute 如:apple._Fruit__color
常见内置属性:
__base__ : 基类组成的元组 ;
__dict__ : 属性组成的字典 ;
__module__ : 类所在的模块名 ;
如果一个字符串已经是unicode了,再进行解码则将出错
isinstance(s, unicode) #用来判断是否为unicode
os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。
os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
os.getenv()和os.putenv()函数分别用来读取和设置环境变量。
os.listdir()返回指定目录下的所有文件和目录名。
os.remove()函数用来删除一个文件。
os.system()函数用来运行shell命令。
os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'/r/n',Linux使用'/n'而Mac使用'/r'。
os.path.split()函数返回一个路径的目录名和文件名。
File Mode Operation
r open for read
w open for write (truncate if necessary)
a open for write (start at EOF, create if necessary)
r+ open for read and write
w+ open for read and write (see "w" above)
a+ open for read and write (see "a" above)
rb open for binary read
wb open for binary write (see "w" above)
ab open for binary append (see "a" above)
rb+ open for binary read and write (see "r+" above)
wb+ open for binary read and write (see "w+" above)
ab+ open for binary read and write (see "a+" above)
print语句调用str()函数显示对象,而交互式解释器则调用repr()函数来显示对象;
_在解释器中表示最后一个表达式的值
Python不支持自减1和自加1
for item in [1,2,2,3]:
print item, 后面加一个逗号 可以使得输出在一行
打开并读取文件:
filename = raw_inpurt('Enter your file name:')
fobj = open(filename,'r')
for eachLine in fobj:
print eachLine,
fobj.close
当一个类实例被创建的时候,__init__()方法会自动执行,这个方法是在类实例创建完毕后才执行,这个方法并不创建实例,他的目的只是进行一些必要的初始化工作。
_xxx 不用'from module import *'导入
_xxx_ 系统定义名字
_xxx 类中的私有变量名
如果程序是被导入 __name__的值就是模块的名字
如果程序是被直接执行 __name__的值就是'__main__'
代码对象是编译过的的Python源代码片段,是可执行对象(通过exec或eval()内建函数)。通过内建函数compile()可以得到代码对象。
对一个对象进行浅拷贝其实是新创建了一个类型跟原对象一样,其内容是原来对象元素的引用,换句话说,这个拷贝的对象本身是新的,但是它的内容不是。( copy.deepcopy() )
python2.1及之前的版本,只能使用经典对象来实现面向对象编程。新型对象内建了Object对象,该对象是内建类型和新型对象的父类。如果要定义新型对象就必须继承Object对象。新型对象提供了对类方法和静态方法的支持。
python的构造函数、析构函数、私有属性或方法都是通过名称约定区分的。
①如果函数、方法、属性以两个下划线开始,则表示私有类型;
②没有使用两个下划线则表示共有类型。
python没有保护类型的修饰符。
python的属性分为实例属性和静态属性。实例属性是以self作为前缀的属性。
python中的类和示例对象都可以访问类属性,而Java终的静态变量只能被类调用。
直接访问私有变量的方式:instance._classname__attribute 如:apple._Fruit__color
常见内置属性:
__base__ : 基类组成的元组 ;
__dict__ : 属性组成的字典 ;
__module__ : 类所在的模块名 ;
如果一个字符串已经是unicode了,再进行解码则将出错
isinstance(s, unicode) #用来判断是否为unicode
os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。
os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
os.getenv()和os.putenv()函数分别用来读取和设置环境变量。
os.listdir()返回指定目录下的所有文件和目录名。
os.remove()函数用来删除一个文件。
os.system()函数用来运行shell命令。
os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'/r/n',Linux使用'/n'而Mac使用'/r'。
os.path.split()函数返回一个路径的目录名和文件名。
File Mode Operation
r open for read
w open for write (truncate if necessary)
a open for write (start at EOF, create if necessary)
r+ open for read and write
w+ open for read and write (see "w" above)
a+ open for read and write (see "a" above)
rb open for binary read
wb open for binary write (see "w" above)
ab open for binary append (see "a" above)
rb+ open for binary read and write (see "r+" above)
wb+ open for binary read and write (see "w+" above)
ab+ open for binary read and write (see "a+" above)