Python核心编程学习笔记(四)
来源:互联网 发布:骑行软件下载 编辑:程序博客网 时间:2024/06/08 03:12
16、文件和内建函数open()、file()
打开文件:handle = open(file_name, access_mode = 'r')
access_mode中,'r'表示读取,'w'表示写入,'a'表示添加,'+'表示读写,'b'表示二进制访问。如果未提供access_mode,默认值为'r'。
以下代码提示用户输入文件名,然后打开一个文件,并显示它的内容到屏幕上:
filename = raw_input('Enter file name: ')fobj = open(filename, 'r')for eachLine in fobj: print eachLine,#使用逗号来抑制自动生成的换行符,否则文本在显示时会有额外的空行产生fobj.close()
file()的功能等同于open()。
17、错误和异常
将代码封装在try-except语句中可以添加错误检测和异常处理。try之后的代码组,就是打算管理的代码。except之后的代码组,是处理错误的代码。
try: filename = raw_input('Enter file name: ') fobj = file(filename, 'r') for eachLine in fobj: print eachLine, fobj.close()except IOError, e: print 'file open error:', e
18、函数
Python中的函数使用小括号(( ))调用。函数在调用之前必须先定义。如果函数中没有return语句,就会自动返回None对象。
Python是通过引用调用的。这意味着函数内对参数的改变会影响到原始对象。不过事实上只有可变对象会受此影响,对于不可变对象来说,它的行为类似按值调用。
(1)函数定义:
def function_name([arguments]): "option documentation string" function_suite
例如:
def addMe2Me(x): 'apply + operation to argument' return (x + x)
(2)函数调用:
>>> addMe2Me(4.25)8.5>>> addMe2Me(10)20>>> addMe2Me('Python')'PythonPython'>>> addMe2Me([-1, 'abc'])[-1, 'abc', -1, 'abc']
(3)默认参数:
函数的参数可以有一个默认值,如果提供有默认值,在函数定义中,参数仪赋值语句的形式提供。事实上这仅仅是提供默认参数的语法,它表示函数调用时如果没有提供这个参数,它就去这个值作为默认值。
>>> def foo(debug=True):'determin of in debug mode with default argument'if debug:print 'in debug mode'print 'done'>>> foo()in debug modedone>>> foo(False)done
19、类
(1)类的定义:
class ClassName(base_class[es]):#可选的父类(或基类),如果没有合适的基类,就使用object作为基类 "optional documention string"#可选的文档字符串static_member_declarations#静态成员定义method_declarations#方法定义
class FooClass(object): """my very first class: FooClass"""version = 0.1 #class (data) attributedef __init__(self, nm='John Doe'): """constructor"""self.name = nm #class instance (data) attributeprint 'Created a class instance for', nmdef showname(self): """display instance attribute and class name"""print 'Your name is', self.nameprint 'My name is', self.__class__.__name__def showver(self): """display class (static) attribute"""print self.version #references FooClass.versiondef addMe2Me(self, x): #does not use 'self' """apply + operation to argument"""return x + x
当一个实例被创建时,__init__() 方法会自动执行,在类的实例创建完毕后执行,类似构造函数,但是,它仅仅是你的对象创建后执行的第一个方法,它的目的是执行一些该对象的必要的初始化工作。创建自己的__init__() 方法覆盖默认的__init__()方法(默认的方法什么也不做),从而修饰刚创建的对象。
以上每个方法都有一个参数--self,什么是self?它是类实例自身的引用,类似于其他语言中的this标识符。
(2)创建类实例
>>> fool = FooClass()Created a class instance for John Doe
方法调用:
>>> fool.showname()Your name is John DoeMy name is FooClass>>> fool.showver()0.1>>> print fool.addMe2Me(5)10>>> print fool.addMe2Me('xyz')xyzxyz
在以上创建实例时并未传递名字参数,因此默认参数'John Doe' 就被自动使用。下面指定一个参数:
>>> foo2 = FooClass('Jane Smith')Created a class instance for Jane Smith>>> foo2.showname()Your name is Jane SmithMy name is FooClass
20、模块
模块是一种组织形式,它将彼此有关系的Python代码组织到一个个独立文件当中。模块可以包含可执行代码,函数和类或者这些东西的组合。
创建了一个Python源文件之后,模块的名字就是不带 .py 后缀的文件名。
(1)导入模块
import module_name
(2)访问模块函数或者模块变量
导入之后,模块的属性(函数和变量)可以通过 .(句点)属性标识法访问。
module.function()
module.varible
>>> import sys>>> sys.stdout.write('Hello World!\n') #调用标准输出write()方法,它不会自动在字符串后面添加换行符号Hello World!>>> sys.platform'win32'>>> sys.version'2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)]'
21、实用的函数
- Python核心编程学习笔记(四)
- python核心编程学习(四)
- python核心编程学习笔记-2016-09-11-01-Web编程(四)
- python核心编程学习笔记-2016-09-24-01-数据库编程(四)
- python核心编程学习笔记(一)
- Python核心编程学习笔记(三)
- python核心编程学习笔记(1)
- Python核心编程学习笔记(一)
- Python核心编程学习笔记(二)
- Python核心编程学习笔记(三)
- Python核心编程学习笔记(六)
- Python核心编程学习笔记(七)
- Python核心编程学习笔记(十一)
- Python核心编程学习笔记(一)
- Python-核心编程-学习笔记
- 《python核心编程》学习笔记
- 《Python核心编程》学习笔记
- 《python核心编程》学习笔记
- 在Ubuntu中安装Redis
- T-SQL入门攻略之2-SQL数据类型
- leetcode Palindrome Partitioning
- java 两个文件合并程序
- HTML标签之marquee
- Python核心编程学习笔记(四)
- 教你如何制造皱纹
- 软件架构.(2)
- 使用VisualNet制作通信资光纤源管理系统效益分析
- 单向链表快速排序
- 教你几招除鞋臭
- 盗墓笔记
- FileZilla Server安装配置
- 闲谈积极性