CH08_类和对象
CH08_类和对象
本章目标
掌握面向对象的思想
掌握类的定义和使用
掌握构造函数的定义和使用
掌握static关键词的使用
面向对象概述面向对象编程是在面向过程编程的基础上发展来的,它比面向过程编程具有更强的灵活性和扩展性。面向对象编程是程序员发展的分水岭,很多初学者会因无法理解面向对象而放弃学习编程。
面向对象编程(Object-oriented Programming,简称 OOP),是一种封装代码的方法。其实,在前面章节的学习中,我们已经接触了封装,比如说,将乱七八糟的数据扔进列表中,这就是一种简单的封装,是数据层面的封装;把常用的代码块打包成一个函数,这也是一种封装,是语句层面的封装。
面向对象中,常用术语包括:
类:可以理解是一个模板,通过它可以创建出无数个具体实例。比如,前面编写的 tortoise 表示的只是乌龟这个物种,通过它可以创建出无数个实例来代表各种不同特征的乌龟(这一过程又称为类的实例化)。
对象:类并不能直接使用,通过类创建出的实例(又称对象)才能使用。这有点像汽车图纸和汽车的关系,图纸本身(类)并不能为人们使用,通过图纸创建出的一辆辆车(对象)才能 ...
CH10_异常处理
CH10_异常处理
本章目标
掌握异常处理机制
掌握异常处理的用法
异常处理概述程序运行时常会碰到一些错误,例如除数为 0、年龄为负数、数组下标越界等,这些错误如果不能发现并加以处理,很可能会导致程序崩溃。
和 C++、Java 这些编程语言一样,Python 也提供了处理异常的机制,可以让我们捕获并处理这些错误,让程序继续沿着一条不会出错的路径执行。
可以简单的理解异常处理机制,就是在程序运行出现错误时,让 Python 解释器执行事先准备好的除错程序,进而尝试恢复程序的执行。
借助异常处理机制,甚至在程序崩溃前也可以做一些必要的工作,例如将内存中的数据写入文件、关闭打开的文件、释放分配的内存等。
Python 异常处理机制会涉及 try、except、else、finally 这 4 个关键字,同时还提供了可主动使程序引发异常的 raise 语句,本章都会为你一一讲解。
开发人员在编写程序时,难免会遇到错误,有的是编写人员疏忽造成的语法错误,有的是程序内部隐含逻辑问题造成的数据错误,还有的是程序运行时与系统的规则冲突造成的系统错误,等等。
总的来说,编写程序时遇到的错误可大 ...
CH11_模块和包
CH11_模块和包
本章目标
掌握模块的定义和使用
掌握包的创建和使用
模块概述前面章节中,我们已经使用了很多模块(如 string、sys、os 等),通过向程序中导入这些模块,我们可以使用很多“现成”的函数实现想要的功能。
Python 提供了强大的模块支持,主要体现在,不仅 Python 标准库中包含了大量的模块(称为标准模块),还有大量的第三方模块,开发者自己也可以开发自定义模块。通过这些强大的模块可以极大地提高开发者的开发效率。
那么,模块到底指的是什么呢?模块,英文为 Modules,至于模块到底是什么,可以用一句话总结:模块就是 Python 程序。换句话说,任何 Python 程序都可以作为模块,包括在前面章节中写的所有 Python 程序,都可以作为模块。
模块可以比作一盒积木,通过它可以拼出多种主题的玩具,这与前面介绍的函数不同,一个函数仅相当于一块积木,而一个模块(.py 文件)中可以包含多个函数,也就是很多积木。模块和函数的关系如图 1 所示。
经过前面的学习,读者已经能够将 Python 代码写到一个文件中,但随着程序功能的复杂,程序体积会不断变大,为了 ...
CH12_文件操作
CH12_文件操作
本章目标
掌握文件路径的运用
掌握文件的基本操作
掌握文件的读写操作
掌握对象持久化存储
概述和其它编程语言一样,Python 也具有操作文件(I/O)的能力,比如打开文件、读取和追加数据、插入和删除数据、关闭文件、删除文件等。
除了提供文件操作基本的函数之外,Python 还提供了很多模块,例如 fileinput 模块、pathlib 模块等,通过引入这些模块,我们可以获得大量实现文件操作可用的函数和方法(类属性和类方法),大大提供编写代码的效率。
文件路径关于文件,它有两个关键属性,分别是“文件名”和“路径”。其中,文件名指的是为每个文件设定的名称,而路径则用来指明文件在计算机上的位置。例如,我的 Windows 7 笔记本上有一个文件名为 projects.docx(句点之后的部分称为文件的“扩展名”,它指出了文件的类型),它的路径在 D:\demo\exercise,也就是说,该文件位于 D 盘下 demo 文件夹中 exercise 子文件夹下。
通过文件名和路径可以分析出,project.docx 是一个 Word 文档,demo 和 e ...
CH01_初识Python
CH01_初识Python
本章目标
掌握python特性
掌握python的优缺点
掌握python的应用领域
掌握python 2.x和 3.x的区别
pythonPython简介
Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。
Python 由 Guido van Rossum (吉多·范罗苏姆) 于 1989 年底发明,第一个公开发行版发行于 1991 年。
像 Perl 语言一样, Python 源代码同样遵循 GPL(GNU General Public License) 协议。
官方宣布,2020 年 1 月 1 日, 停止 Python 2 的更新。
Python 2.7 被确定为最后一个 Python 2.x 版本。
编程语言是什么
其实,程序指的就是一系列指令,用来告诉计算机做什么,而编写程序的关键在于,我们需要用计算机可以理解的语言来提供这些指令。
为了有效避开所有影响给计算机传递指令的因素,计算机科学家设计了一些符号,这些符号各有其含义,且之间无二义性,通常称它们为编程语言。编程语言中的每个结构,都有固定的使用格式(称为语法) ...
CH05_字符串常用方法
CH05_字符串常用方法
本章目标
掌握字符串常用方法的运用
python字符串常用方法概述在了解字符串的基本使用之后,本章将介绍 Python 字符串类型常用的几个方法。
在 Python 开发过程中,经常需要对字符串进行一些特殊处理,比如拼接字符串、截取字符串、格式化字符串等,这些操作无需开发者自己设计实现,只需调用相应的字符串方法即可。
注意,本章所讲的字符串方法,和内置函数(如 len() )不同,它们是字符串类型(str)所特有的,因此这些字符串方法的调用方式也比较特殊。
python字符串常用方法详解1.字符串拼接在 Python 中拼接(连接)字符串很简单,可以直接将两个字符串紧挨着写在一起,具体格式为:
1strname = "str1" "str2"
strname 表示拼接以后的字符串变量名,str1 和 str2 是要拼接的字符串内容。使用这种写法,Python 会自动将两个字符串拼接在一起。
【示例】以连续书写的形式拼接字符串:
1234str1 = "Python教程" "http ...
CH06_流程控制
CH06_流程控制
本章目标
掌握if选择结构的运用
掌握assert断言
掌握while循环结构的运用
掌握for循环结构的运用
掌握循环中break和continue的运用
if选择结构概述在 Python 中,可以使用 if else 语句对条件进行判断,然后根据不同的结果执行不同的代码,这称为选择结构或者分支结构。
Python 中的 if else 语句可以细分为三种形式,分别是 if 语句、if else 语句和 if elif else 语句,它们的语法和执行流程如表1所示。
以上三种形式中,第二种和第三种形式是相通的,如果第三种形式中的 elif 块不出现,就变成了第二种形式。另外,elif 和 else 都不能单独使用,必须和 if 一起出现,并且要正确配对。
对语法格式的说明:
“表达式”可以是一个单一的值或者变量,也可以是由运算符组成的复杂语句,形式不限,只要它能得到一个值就行。不管“表达式”的结果是什么类型,if else 都能判断它是否成立(真或者假)。• “代码块”由具由相同缩进量的若干条语句组成。• if、elif、else 语句的最 ...
CH04_列表-元组-字典-集合
CH04_列表-元组-字典-集合
本章目标
掌握列表(List)的运用
掌握元组(Tuple)的运用
掌握字典(Dict)的运用
掌握集合(Set)的运用
python序列概述所谓序列,指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。
为了更形象的认识序列,可以将它看做是一家旅店,那么店中的每个房间就如同序列存储数据的一个个内存空间,每个房间所特有的房间号就相当于索引值。也就是说,通过房间号(索引)我们可以找到这家旅店(序列)中的每个房间(内存空间)。
在 Python 中,序列类型包括字符串、列表、元组、集合和字典,这些序列支持以下几种通用的操作,但比较特殊的是,集合和字典不支持索引、切片、相加和相乘操作。
Python 序列(Sequence)是指按特定顺序依次排列的一组数据,它们可以占用一块连续的内存,也可以分散到多块内存中。Python 中的序列类型包括列表(list)、元组(tuple)、字典(dict)和集合(set)。
在 Python 编程中,我们既需要独立的变量来保存一份数据,也需要序列来保存大量数据。 ...
CH03_变量和运算符
CH03_变量和运算符
本章目标
掌握python的语法规范
掌握变量的运用
掌握各类运算符的运用
python语法规范注释
注释(Comments)用来向用户提示或解释某些代码的作用和功能,它可以出现在代码中的任何位置。Python 解释器在执行代码时会忽略注释,不做任何处理,就好像它不存在一样。
在调试(Debug)程序的过程中,注释还可以用来临时移除无用的代码。
注释的最大作用是提高程序的可读性,没有注释的程序简直就是天书,让人吐血!
千万不要认为你自己写的代码规范就可以不加注释,甩给别人一段没有注释的代码是对别人的不尊重,是非常自私的行为;你可以喜欢自虐,但请不要虐待别人。
很多程序员宁愿自己去开发一个应用,也不愿意去修改别人的代码,没有合理的注释是一个重要的原因。虽然良好的代码可以自成文挡,但我们永远不清楚今后阅读这段代码的人是谁,他是否和你有相同的思路;或者一段时间以后,你自己也不清楚当时写这段代码的目的了。
一般情况下,合理的代码注释应该占源代码的 1/3 左右。
Python 支持两种类型的注释,分别是单行注释和多行注释。
单行注释
Python 使用井 ...
word_CH03_其他选项卡和打印
word_CH03_其他选项卡和打印本章目标1、学会页面布局设置
2、学会目录的引用
3、了解拼写和语法、字数统计
4、学会插入水印
5、学会插入注释
6、学会使用主控文档管理文档
7、学会使用批注和修订
8、了解Word中的宏
9、学会文件的打印设置
页面布局文字方向设置查看文字的方向,默认是水平方向,可以设置垂直方向查看文字内容,设置垂直方向查看。内容就是从右到左查看。而不是从左到右查看。
将中文字符旋转270度,这个的意思是将内容旋转,而不是整个页面,那么文字还是和水平方向的看法一样,从上往下看,只是内容翻转了
页边距页边距是指当前文档编辑区的上下左右离文字内容的距离
页边距包括五个:普通、窄、适中、宽、镜像
普通是word文档默认的页边距,上下2.54,左右3.18cm
窄是上下左右的边距都是1.27cm
适中是使内容适中,他和普通的区别就在于左右边距的调整,上下边距都欧式一样的2.54cm,而普通的边距左右是1.91cm
宽就是上下是2.54,左右是5.08cm
镜像,大家看到镜像这里,和其他四个不同的点在哪里?对的,其他四个是上下左右,而镜像是上下、内侧、外侧,他不是没有左 ...