入门与精通整本书课件完整版电子教案全套课件最全教学教程ppt(最新)_第1页
入门与精通整本书课件完整版电子教案全套课件最全教学教程ppt(最新)_第2页
入门与精通整本书课件完整版电子教案全套课件最全教学教程ppt(最新)_第3页
入门与精通整本书课件完整版电子教案全套课件最全教学教程ppt(最新)_第4页
入门与精通整本书课件完整版电子教案全套课件最全教学教程ppt(最新)_第5页
已阅读5页,还剩624页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Python简介第一章Python(蟒蛇)是荷兰人Guido van Rossum发明的面向对象的解释型编程语言。随着近几年云计算、大数据和人工智能的兴起,Python语言也越来越受到开发人员的重视。如今,Python已经成为最受欢迎的程序设计语言之一,甚至已经进入了小学教材,学习Python已然变得刻不容缓。Python概述Python概述01Python的安装02编写第一个Python程序03Python概述Python是一种计算机编程语言以及配套的软件工具和库。Python简单易学,代码十分简洁,它使用强制空白符作为缩进,这大大提高了Python的开发效率,使用Python能够在更短的时

2、间内完成更多的工作。Python是一门开源的语言,并且Python还有许多强大的开源库,这些库使得Python无论是对云计算、大数据、还是人工智能,都有很强的支持能力。PART 01Python程序运行时是先将源码转换成字节码,然后再由Python解释器来执行这些字节码,所以就跳过了编译这一步,如图2所示。这使Python无需改动就可以在不同的平台上运行,拥有了良好的可移植性。虽然Python语言与C语言的运行机制不同,但是Python的底层是基于C语言编写的,这将在以后要讲解的Python的变量存储机制上有所体现。 需要注意的是,目前市面上存在的Python版本大体上分为Python 2和P

3、ython 3这两个版本,Python 3相比于Python 2是一个较大的升级,并且Python 3是不向下兼容的。本书使用的Python版本为Python 3。Python是一门解释型语言。它不需要编译就可以执行,代码由Python解释器直接解释运行,因此它的运行机制和C语言是不同的。如图1所示,在Windows系统下执行C语言需要编译成Windows系统的二进制序列,在Linux系统下执行C语言需要编译成Linux系统的二进制序列,在Mac系统下执行C语言需要编译成Mac系统的二进制序列,在其他系统条件下执行C语言需要编译成其他系统的二进制序列。 图1 C语言运行机制 图2 Python

4、运行机制Python具有以下特点(1)简单易学。(2)功能强大。Python拥有丰富的开源库,其中有Python自带的库,如OS、SYS、Re等,也有第三方库,如NumPy、Pandas、Requests等。有了这些库的支持使得Python能被广泛地应用于Web开发、科学计算、机器学习(Machine Learning,ML)、人工智能(Artificial Intelligence,AI)、网络爬虫等诸多领域。(3)面向对象。Python虽然常用来做面向过程编程,但是它也可以很好地用来做面向对象编程。(4)可移植性。Python的可移植是Python得以强大的原因之一,同一个Python程序

5、几乎无须任何修改就可以在不同的平台中运行。(5)开发周期短。代码的简洁使得Python能从众多的编程语言中脱颖而出,使用Python开发程序比用其他语言能够缩短可观的开发时间。 虽然Python语言相比于其他语言有很多的优点,但是它也有一些不可避免的缺点,如它的运行速度明显落后于Java语言和C语言。另外,Python语言的缩进也是一个问题,Python的语句块并没有像Java和C那样使用大括号包起来,取而代之的是使用缩进的方法。初学者很容易因为一个空格而寻找许久的bug。最后,Python语言虽然也可以拿来做面向对象编程,但是相比于Java,它还是有一些不足,当要开发一个大型的项目时,最好还

6、是选择使用Java、C+等语言,毕竟Python语言设计的初衷也不是用来开发大型的项目。 Python的安装本节主要讲解Python在Windows、Linux、Mac系统中的安装。PART 021.Python在Windows系统中的安装1.准备工作(1)装有Windows系统的计算机一台。(2)Python可执行安装包,可到Python官网下载。2.具体安装步骤(1)选择最新的Python版本,根据自己计算机的参数选择相应的版本下载。32位计算机系统选择X86版,64位计算机系统选择X86-X64版。为了更快捷、方便地安装,建议采用可执行文件的安装方式安装Python。(2)下载完成后,开

7、始安装Python。有两种安装方式,Install Now(快捷安装)和Customize installation(自定义安装)。这里选择自定义安装,并勾选Add Python 3.7 to PATH,勾选其可以省去修改环境变量的步骤,实现自动添加到系统路径的功能,然后单击Customize installation。(3)单击Customize installation后会进入Python的安装配置界面1,单击“Next”按钮进入下一步。这时进入Python安装配置界面2。这里只需勾选前五个选项,前五个选项包含了Python绝大部分功能,如果有需要可以再次安装。并单击“Browse”按钮选

8、择安装路径,然后单击“Install”按钮开始安装。安装完成后单击“Close”按钮关闭窗口后,Python安装完成。(4)Python安装完成后需要检验是否安装成功。使用快捷键Win+R键进入DOS命令控制台,在命令行内输入Python或者Python 3。如果安装成功,则会输出Python的版本信息,如下所示。C:Users1PythonPython 3.7.0 (v3.7.0:41df79263a11, Dec 23 2016, 08:06:12) MSC v.1900 64 bit (AMD64) on win32Type help, copyright, credits or lic

9、ense for more information.2.Python在Linux系统中的安装1.准备工作(1)装有Linux系统的计算机或安装了Linux系统的虚拟机。有的Linux系统自带有Python,但是可能不是Python 3版本,如果要确认Python版本的话,可以分别在终端输入命令:Python和Python 3查看,前者用于检查是否安装了Python 2,后者用于检查是否安装了Python 3。不同的Linux系统安装Python的方法可能有所不同。本书讲解的是在CentOS 7.0版本下的Linux系统上安装Python。(2)Python 3源码包,可到Python官网下载。

10、2.具体安装步骤(1)输入命令su -进入root用户: adminroot $ su -(2)输入命令:wget /ftp/python/3.7.0/Python-3.7.0.tgz,下载源码包或直接在浏览器下载。(3)下载完成后,执行命令:yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel,安装Python 3依赖包。执行命令后,可以看到Python 3依赖包安装信息,输入“y”确认安装。(4)Python 3依赖包安装完成后执行命令:tar -xzvf Pytho

11、n-3.7.0.tgz,解压下载好的Python安装包,如下所示。rootroot /# tar -xzvf Python-3.7.0.tgz(5)解压完成后,输入命令:cd Python-3.7.0/,进入生成的目录,如下所示。rootroot /# cd Python-3.7.0/rootroot Python-3.7.0#接着执行命令:./configure -prefix=/usr/local/,设置Python的安装目录为/usr/local/,如下所示。rootroot Python-3.7.0# ./configure -prefix=/usr/local/(6)配置完成之后执行

12、命令:make开始编译源码,如下所示。rootroot Python-3.7.0# make整个编译过程大概3-5分钟。(7)编译完成后,执行命令:make install,开始安装Python,如下所示。rootroot Python-3.7.0# make install(8)安装完成之后,使用Python 3命令查看是否安装成功,如果安装成功,则会输出Python如下所示的版本信息。rootroot Python-3.7.0# Python3Python 3.7.0 (default, Aug 8 2018, 22:21:25) GCC 4.8.5 20150623 (Red Hat 4

13、.8.5-28) on linuxType help, copyright, credits or license for more information.当显示上述信息后,可直接输入Python代码运行,如需退出可使用Ctrl+Z键或输入exit()退出。3.Python在Mac OS系统中的安装1.准备工作(1)装有Mac OS系统的计算机一台。(2)Python可执行安装包,可到Python官网下载。2.具体安装步骤(1)进入Python官网,将鼠标放在Downloads菜单上,在二级菜单中选择All releases,即可进入下载界面,选择最新版的Python,单击Download进

14、入到下载页面。(2)进入下载页面后,在网页底部根据自己计算机的参数选择相应的版本下载(Windows系统中选择executable installer文件进行下载)。(3)下载完成之后,打开安装包,按提示进行安装。(4)根据提示安装完成后,打开终端输入Python,如果出现如图所示的界面,则Python安装成功。安装成功界面 编写第一个Python程序本节将详细讲解如何使用Python写出一个简单的程序,同时也将介绍一些常用的Python解释器以及注释的使用。PART 03(1)打开Python的交互式环境。在Windows中使用Win+R键打开Dos命令控制台输入Python 3进入,Lin

15、ux和Mac打开终端输入Python 3进入,打开成功之后可以看到如下所示的提示:Python 3.7.0 (v3.7.0:41df79263a11, Dec 23 2016, 08:06:12) MSC v.1900 64 bit (AMD64) on win32Type help, copyright, credits or license for more information.(2)进入到交互式环境之后,可以看到有“”字样的提示符,在此提示符之后可直接输入Python代码并按Enter键运行。下面我们试试输入“100+100”,看看返回的结果是不是“200”。 100 + 10020

16、0需要注意的是,在Python Shell环境之中,有“”的行是用户输入的内容,而没有“”的行是Python生成的。因此,在Python Shell中很容易就能看出哪些内容是用户输入的,哪些内容是Python生成的。使用Python的交互式环境(Python Shell)来编写Python代码具体步骤如下:(3)在Python中如果想输出文本内容可以使用print语句来实现。但需要注意的是,Python 3中的print语句输出的内容是使用小括号和引号(单引号、双引号均可)包起来的,而Python 2中的print语句是使用引号包起来的,这是Python 2和Python 3较大的不同处。同时

17、注意,不论是在Python 2还是Python 3里,单引号和双引号不能混用,否则会报错。如果在Python 3的Shell环境中,使用Python 2中的print语句格式的话,则会报错,例如如下的示例。 print hello world #Python 2中的print语句格式 File , line 1 print hello world SyntaxError: invalid syntax在Python 3的Shell环境中,如果单双引号混用的话,则会报下面的错误,例如如下的示例。 print(hello world)#print语句输出的内容使用小括号和单双引号混用 File ,

18、 line 1 print(hello world) SyntaxError: EOL while scanning string literal在Python 3的Shell环境中,正确的写法应该是: print(hello world)#print语句输出的内容使用小括号和双引号包起来hello world print(hello world) #print语句输出的内容使用小括号和单引号包起来hello world(4)前面输出的内容都是没有换行的,而且一次只能执行一个print语句。Python中的换行结合了C语言的特点,使用“n”作为换行符,所以如果要输出换行的文本内容,只需在文本内

19、容的最后面加入了“n”之后,输出的文本换行了。同时在Python之中,分号结束符是可以省略的,取而代之的是使用换行来标识语句的结束。不过有一些情况下分号是不可以省略的,如下所示,当在一行中需要执行多个语句时,就需要使用分号将每个语句分隔开,例如如下的示例。 print(hello ); print(world)helloworld(5)使用Python Shell,只需要输入完代码之后按Enter即可执行了,但是当代码很多的时候,一句一句地在Python Shell中输入是十分不现实的,此时就需要将代码保存为一个Python可执行的文件。首先在磁盘上新建一个hello.py文件,然后使用记事本

20、打开该文件,输入下列内容:#!/usr/bin/env python3print(hello world)然后使用命令行输入:Python 文件地址 文件名,来执行Python代码可达到上面相同的效果,例如如下的示例。C:Users1Python D:hello.pyhello worldC:Users1上述代码中的第一行的作用是从环境变量中查找Python解释器的位置,它还可以是:#!/usr/bin/python3表示从路径/usr/bin/python3查找Python解释器。#!/usr/bin/env python3相比于#!/usr/bin/python3更加可靠,因为当Pytho

21、n解释器的路径不在/usr/bin/python3下时,程序会出现找不到解释器的错误,因此本书使用的是#!/usr/bin/env python3。需要注意的是,#!/usr/bin/env python3和#!/usr/bin/python3不是必须要写的,只有当程序需要在Linux系统下运行时才需要添加,不过为了使程序具有更好的可移植性,最好还是将其添加到代码里面。 前面讲到了使用#!/usr/bin/env python3来设置Python解释器的位置,那么什么是Python解释器呢?简而言之就是将Python语言转换成其他语言再运行的一个程序。Python是一门解释型语言,不需要编译就

22、可以运行,这归功于Python有一个强大的解释器。Python解释器可以将Python代码一行一行地转译,每转译一行就立刻运行,然后再转译下一行,再运行,直到程序结束。Python具有许多的解释器,这些解释器都是开源的,并且它们都有各自的优点,下面简单介绍几个常见的Python解释器。(1)CPythonCPython是Python自带的一个解释器,当你从Python官网上下载安装了Python之后,就自动安装了CPython解释器,它是基于C语言开发的一个解释器。CPython是目前使用最广的解释器,它基本包含了所有第三方库的支持。(2)PyPyPyPy是Python的另一个解释器,它解决了

23、CPython无法支持即时编译的问题,对CPython的各方面缺点进行了改良,在性能上得到了一定的提升。但是,PyPy并不支持官方的CPython API,故不能使用某些第三方库。(3)IPythonIPython是基于CPython的一个更高级的解释器,它在Python的交互性上有所提高。并且支持变量自动补全,自动缩进,支持bash shell命令。需要注意的是,CPython中使用“”作为提示符,但是在IPython中却是使用“In序号”作为提示符。(4)JythonJython是基于Java的一个Python解释器,它可以直接把Python代码转换成Java字节码运行。Python解释器

24、:一个好的程序,注释是必不可少的,注释可以使程序阅读起来更加的容易,还能起到备注的功能,方便下次开发的时候理解代码。Python有两种注释:单行注释和多行注释。首先介绍单行注释的使用。Python的单行注释以“#”开头,例如如下的示例: # print(hello). print(world)world可以看到,程序并没有执行“#”之后的代码。当编写代码时需要多行注释时,再使用“#”一行一行地添加注释是不现实的,所以这时就需要使用多行注释。Python中的多行注释使用三个单引号或三个双引号将注释括起来,例如如下的示例: 第一行注释 第二行注释 第三行注释 或: 第一行注释 第二行注释 第三行注

25、释学会写注释,是一个程序员必备的技能,特别是团队合作开发一个项目的时候,注释能帮助你和其他成员之间更好的沟通。注释的使用:课后习题一、选择题1.在一行上写多条语句时,每个语句之间用( )分隔。A. #B. ;C. /D. &2.Python语言源程序的扩展名为( )。A. py B. c C. class D. python3.下列哪些符号可用于注释Python代码( )。A. /*B. /C. #D. $二、简答题与编程题1.简述什么是Python以及Python有哪些特点。2.简述Python的运行机制。3.简述Python的运行机制和C语言运行机制的不同。4.简述Python适合做什么,

26、不适合做什么。5.Python在Linux系统的安装主要分为哪几步?6.尝试将Python作为一个计算器,输入表达式,如12/(4+1)。7.Python代码的运行方式有哪几种?8.尝试安装和使用其他的Python解释器。9.Python的单行注释和多行注释分别用什么?10.分别用换行符“n”和三引号输出下列内容:*11.26个字母可以组成26的10次方或者26*10个10字母长的字符串。也就是141167095653376L(结尾处的L只是表示这是Python长数字格式)。100个字母长度的字符串可能有多少个?使用Python计算。感谢大家的全力支持LOGOPython基础第二章本章主要讲解

27、Python基础,包括Python基本数据类型;Python变量的定义和使用;运算符的使用;字符串的定义和使用;字符串编码解码。大数据概述 Python中的常量与变量01Python中的运算符02 Python中的字符串和编码03Python编辑器04Python中的常量与变量在介绍Python变量之前,首先要知道Python有哪些数据类型。Python有六种标准数据类型:数字(Number)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Set)。其中数字和字符串是基本数据类型,列表、元组、字典和集合是高级数据类型。PART 01数字类型P

28、ython数字类型包括整型(int)、浮点数(float)、复数(complex)、布尔型(bool)四种数值类型。1.整型整型几乎是所有编程语言中最基本的一种类型,它的表达方式和正常的书面书写一样,如: 1010常见的整型都是十进制的,但是有的时候为了计算的需要可能要使用到其他进制的整型。Python 3提供了一些用于进制转换的内置函数:bin()、int()、oct()、hex(),分别用来将整型转换为二进制、八进制、十进制、十六进制,如: print(十进制数:, 10)十进制数:10 print(二进制数:, bin(10)二进制数:0b1010 print(八进制数:, oct(10

29、)八进制数:0o12 print(十六进制数:, hex(10)十六进制数:0 xa从执行结果可以看出,十进制的整型开头是没有标识符,而二进制、八进制、十六进制整型的标识符分别为:0b、0o、0 x。关于各进制之间的相互转换如表所示。进制二进制八进制十进制十六进制二进制oct(二进制数)int(二进制数)hex(二进制数)八进制bin(八进制数)int(八进制数)hex(八进制数)十进制bin(十进制数)oct(十进制数)hex(十进制数)十六进制bin(十六进制数)oct(十六进制数)int(十六进制数)2.浮点数浮点数为带小数点的实数,如3.14、0.25、-10.26、50.21E12(

30、此处为科学计数法,表示50.21*1012)等都是浮点数。Python 3中的浮点数和正常的书写格式基本一致。但是当小数点前面或后面的数为0时,0可以省略。Python 3中的整型是没有上下限的,而浮点数则不同,它具有上限和下限。当浮点数超出了上限或下限时,会报溢出错误信息。 2 * 1024 #2的1024次方17976931348623159077293051907890247336179769789423065727343008115773267580550096313270847732240753602112011387987139335765878976881441662249284

31、7430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216 2.0 * 1024Traceback (most recent call last): File , line 1, in OverflowError: (34, Result too large)当输入2的1024次方之后,Python反馈了一个“Result

32、too large”错误。提示结果太大,Python不能把它表示出来。值得注意的是,浮点数在计算机中都是使用二进制存储的,由此不可避免的会带来一定的精度丢失。因此,在使用Python做精确计算的时候,需要先对浮点数进行一定的处理。一种较好的办法就是使用decimal模块来处理浮点数,例如如下的示例: from decimal import Decimal#导入decimal模块中的Decimal()函数 a=Decimal(0.1) b=Decimal(0.2) a+bDecimal(0.3) print(a+b)0.3上面代码的第一行的功能是导入Python 3内置的decimal模块中的D

33、ecimal类,这将在第5章中讲解。第二行和第三行分别将字符串0.1和0.2转换成了Decimal类型,第四行代码可以看到变量a和b相加后的类型仍然为Decimal类型,并且其对应的浮点数结果为0.3,最后一行代码使用print()语句直接输出了浮点数运算的结果。需要注意的是,传入Decimal的参数不能是浮点数,否则误差会仍然存在,因为Python中的浮点数本来就是不精确的。3.复数Python 3提供了对复数的支持,其运算方法跟数学中的复数运算基本一致。在Python 3中,规定使用1j来表示-1的平方根,如下所示是Python中1j的四则运算。 1j + 1j2j 1j - 1j0j 1

34、j * 1j(-1+0j) 1j / 1j(1+0j)如果需要获取复数的实数部分可以使用.real,获取虚数部分用.imag,例如如下的示例: 1j * 1j(-1+0j) (1j * 1j).real #实数部分为-1.0-1.0 (1j * 1j).imag #虚数部分为0.00.04.布尔型布尔型是一个十分重要的数据类型,它主要应用在分支,循环结构中。Python 2中是没有布尔型的,它用0表示False,1表示True。而Python 3则将0和1分别定义为了:False和True字段,但是它们仍然可以像整型那样相加,例如如下的示例: False + True1 True + True

35、22 字符串(String)1.标识字符串字符串是Python中常用的一种数据类型,它是由单引号 或双引号 括起来的文本内容,包括字母、数字、标点符号以及特殊符号等字符。除此之外,还可以使用三个单引号或双引号来表示多行字符串。单引号和双引号其实并没有多大的差别,只不过是因为编程的时候双引号需要按住Shift键才能打出来,但是当字符串中含有引号的时候,就需要谨慎地选择使用引号。2.转义符的使用使用转义字符 也能解决字符串中含有单引号或双引号的问题,例如如下的示例: Iam JackIam Jack He said Thank youHe said Thank you如果想让字符串中的转义符不起作

36、用的话可以在字符串前加“r”,例如如下的示例: print(nhello world) hello world print(rnhello world)nhello world除了之外,Python中还有其他的转义符,如表所示。转义符bn000tvr说明反斜杠单引号双引号退一格换行空格横向制表符纵向制表符回车 3 类型转换有时用户遇到的数据类型并不是其所需要的,这时就需要用到类型转换函数。Python 3常用的类型转换函数有三个:int()、float()、str(),这三个函数的使用场景如图所示,下面对三个函数进行简单介绍。(1)str()函数用于将整型、浮点数转换成字符串,例如如下的示例:

37、 str(100) #将100这一整型转换转换为字符串,下面的以此类推100(2)float()函数用于将字符串、整型转换成浮点数,例如如下的示例: float(100)100.0(3)int()函数用于将字符串、浮点数转换成整型,例如如下的示例: int(100)100 int(1.5)1另外,浮点数转整型还可以使用round()函数,它和int()函数唯一的区别就是对小数部分的处理不同,其使用方法如下: int(5.5)5 round(5.5)6可以看到,int()函数是直接舍弃掉小数部分而得到整数,而round()函数则是使用四舍五入的方法将浮点数转换为整数。另外,round()函数还可

38、以保留小数位数,例如如下的示例: round(5.123, 1)5.1上述程序中的1表示对浮点数5.123保留1位小数。有的时候,Python会在运算时自动判断结果的类型,而不需要使用函数去转换,例如如下的示例: 1 + 1.52.54 变量1.定义变量变量是计算机语言中能储存计算结果或能表示值抽象概念,它通常是可变的。Python中变量的定义格式为:变量名 = 变量值Python之所以代码很简洁,主要就依赖其变量定义的方式上,在Python中可以一次为多个变量赋相同的值,例如如下的示例: a = b = c = 1 print(a=, a, b=, b, c=, c)a= 1 b= 1 c=

39、 1也能一次为多个变量赋不同的值,例如如下的示例: a , b, c = 1, 2, 3 print(a=, a, b=, b, c=, c)a= 1 b= 2 c= 32.类型判断和Java不同的是,Python中的变量在定义时不需要预先声明变量的类型,Python会根据变量指向的值自动判断该变量的类型。当编程时无法确认一个变量的类型的时候,可以使用type()函数来查看该变量的类型,例如如下的示例: a = 1 b = 1 print(变量a的类型:, type(a), n变量b的类型:, type(b)变量a的类型: 变量b的类型: 除此之外,还可以使用isinstance来判断变量的类

40、型,其返回的结果为True或False,例如如下的示例: a = 10 isinstance(10, float)#通过isinstance判断10是否为float类型False已定义的变量的类型并不是一直不变的,它会跟随其对应的值的类型改变而改变,例如如下的示例: a=1 type(a) #用type()函数判断a这一变量的类型,下同 a=1.1 type(a)3.变量的存储方式要灵活地使用Python变量,必须要先了解Python的变量在内存中的存储方式。首先通过id()函数查看变量在内存中的存储地址,例如如下的示例: a = 1 b = 2 id(a)#通过id()函数查看变量a在内存中

41、的存储地址140711954600992 id(b)140711954601024通过运行结果可以知道变量a在内存中的存储地址为140711954600992,变量b的存储地址为140711954601024,然后执行下列代码: b = a print(a=, a, 地址:, id(a)a= 1 地址: 140711954600992 print(b=, b, 地址:, id(b)b= 1 地址: 140711954600992为什么最后变量b的存储地址成为变量a的地址了呢?在定义变量a和变量b时,程序首先申请了两个内存地址,分别存储整数1和整数2,如图1所示。 当使用赋值符号“=”将变量a的

42、值赋给b之后,其实是让变量b指向了整数1,因此变量b的地址变成了变量a的地址,其过程如图2所示。这点一定要注意,在python中,赋值方式和其他语言不同,其他语言是直接更改变量b内存里面的值,而Python直接改变b的指向,类似于C语言中的指针。因此最后打印出来的变量b的地址和值跟变量a是一样的。图1图25 常量Python中没有专门定义常量的方式,通常使用大写英文字符表示常量,例如如下的示例: PI = 3.14但是这样的常量其实并不是真正的常量,事实上,Python中的常量也是一种变量,只不过它用大写字母标志,提示程序员不能更改它。6 变量的命名规则关于Python的命名规则,具体有以下几

43、点:(1)变量名应该尽量通俗易懂,方便以后维护时阅读代码。(2)变量名只能包含字母,数字和下画线,并且第一个字符不能是数字,必须是字母或下画线。(3)变量名不能包含空格,如果变量中有多个单词可以使用下画线分隔。(4)变量名区分大小写,所以变量PI和变量pi是不同的变量名。(5)变量名不能使用代码中的函数名或Python内置的函数名命名,如不能使用print来命名变量。(6)变量名不能使用Python的关键字命名。关键字是已被Python编辑工具本身使用,不能作其它用途使用的字,如不能使用if来来命名变量。如需查看Python的关键词可以使用下列方法: import keyword #导入key

44、word模块 keyword.kwlistFalse, None, True, and, as, assert, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield#所有的关键字都已列表的形式存放在kwlist属性中。Python中的关键字如表所示。FalseclassfromorNonecontinu

45、eglobalPassTruedefifRaiseanddelimportReturnaselifintryassertelseiswhileasyncexceptlambdawithawaitfinallynonlocalyieldbreakfornotPython中的运算符运算符就像数学上的加减乘除一样,是用来运算的一个符号。Python中的运算符远不止加减乘除这几个。Python中共有7种运算符:算术运算符、关系运算符、赋值运算符、位运算符、逻辑运算符、成员运算符和身份运算符。本节中将详细介绍Python中的运算符及优先级。PART 02算术运算符算术运算符是Python中最常用的运算符

46、之一,它跟数学上的运算符基本一致。Python中的算术运算符共有七个,其描述如表所示。运算符+-*/%*/描述加减乘除取余幂取整除前面的+、-、*、/运算符使用方法跟数学上基本是一致的,不同的是Python中的/运算返回的结果都是浮点数,即使是两个能整除的数也是一样的,如100/2的运算结果应该是整数50,但是Python返回的是50.0。 100 / 250.0 % 、 * 、 / 运算符的示例如: 9 % 4 #9除4的余数为11 3 * 2 #3的平方为99 9 / 4 #9 / 4 = 2.25,去掉小数后为22%运算符也可以用在格式化输出字符串中。关系运算符Python的关系运算符主

47、要用于分支和循环结构中,运算结果返回的布尔值True或False,关系运算符的描述如表所示。运算符=!= a = 1 a = 100#a是否等于100False a1 print(a = 100)Traceback (most recent call last): File , line 1, in TypeError: a is an invalid keyword argument for print()上述示例中运算符“=”将变量a赋值为1,它不返回任何值,故在print语句中使用会出错,而“=”只是用来判断变量a的值是否等于100,它们不相等故返回了False。赋值运算符赋值运算符简而

48、言之就是拿来为变量赋值的运算符,前面定义变量时用到的“=”就是赋值运算符。在Python中赋值运算符不仅只有“=”,还有许多的赋值运算符,其描述如表所示。序号运算符描述示例1=常用的赋值运算符a=1,将整数1赋给变量a2+=加法赋值运算符a+=b,等效于a=a+b3-=减法赋值运算符a-=b,等效于a=a-b4*=乘法赋值运算符a*=b,等效于a=a*b5/=除法赋值运算符a/=b,等效于a=a/b6*=幂赋值运算符a*=b,等效于a=a*b7%=取余赋值运算符a%=b,等效于a=a%b8/=取整赋值运算符a/=b,等效于a=a/bPython没有了C语言和Java中的自增(+)和自减(-)运

49、算符,这是由Python变量的存储方式所决定的。可以使用赋值运算符“+=”和“-=”代替“+”和“-”,例如如下的示例: a = 1 a += 1#自增1 a2需要注意的是,在Python中使用上面的运算符不止能达到使变量的值自增自减1的效果,还能自增自减任意值,例如如下的示例: a = 1 a -= 2 #自减2 a1位运算符Python中的位运算符把数字作为二进制数来运算,为方便讲解这里先定义两个变量a=12和b=10,并用二进制将其表示出来为:a=1100,b=1010。位运算符的描述如表所示。序号运算符描述示例1 &按位与运算符:两个相应的位都为1时,该位结果为1,否则为0a&b=11

50、00&1010=1000=82 |按位或运算符:只要对应的二进制位有一个1该位结果就为1,否则为0a|b=1100|1010=1110=143 按位异或运算符:相应二进制位不相同时该位结果就为1,否则为0ab=11001010=0110=64 按位取反运算符:将每个二进制位取反,01,10,其结果类似于将原数取负再减1。a=0011=-13b=0101=-11注意这里的二进制数是带符号的。5左移运算符:将二进制位全部左移n位a2=00110000=48b右移运算符:将二进制位全部右移n为a2=0110=3b2=0010=2逻辑运算符Python中的逻辑运算符有三个:and、or、not,主要用

51、于布尔值的运算。and运算符只有都为True时,才返回True,使用方法如下: True and True#and表示“与”True True and FalseFalse False and TrueFalse False and FalseFalseor运算符只要有一个为True,就返回True,使用方法如下: True or True#or表示“或”True True or FalseTrue False or TrueTrue False or FalseFalsenot运算符可以将True变为False,False变为True,使用方法如下: not True#not表示“非”Fal

52、se布尔值运算在流程控制中起着很大的作用,所以请务必掌握它的使用方法。成员运算符成员运算符有两个:in,not in。成员运算符主要用于判断一个值是否包含在某个字符串、列表或元组之中。如果包含,则返回True,否则返回False。使用方法如下: a = hello world#定义一个hello world字符串变量 hello in a#判断单词hello是否在字符串变量a中True hi in aFalse hi not in a#判断单词hi是否不在字符串变量a中True hello not in aFalse身份运算符身份运算符有两个:is,is not。主要用于判断两个标识符是否引用

53、于同一个对象。它的使用方法类似于成员运算符,例如如下的示例: a = 1 b = 1 a is b#判断a和b是否引用于同一个对象True a is not bFalse id(a)#获取a的地址140711954600992 id(b)#获取b的地址140711954600992通过最后的结果可以看到,变量a和b指向的都是同一个地址,故“a is b”返回的结果为True。需要注意的是:这里的“is”运算符和“=”运算符是有区别的。“is”运算符用于判断变量是否引用于同一个对象,而“=”运算符用于判断两个变量的值是否相等。运算符优先级表 Python运算符优先级序号运算符说明1*幂(乘方)2

54、、+x、x补码,一元加减3* 、/ 、% 、/乘,除,取余,取整除4+、-加,减5左移和右移6&按位与7、|按位异或,按位或8=、=比较运算符9=、!=等于运算符10=、+=、-=、*=、/*、/*、%=赋值运算符11is、is not身份运算符12in、not in成员运算符13not、or、and逻辑运算符14lambdalambda表达式Python中的字符串和编码PART 031.字符串的定义和使用1.定义字符串变量Python中定义字符串变量的情况在前面已经出现过,它跟定义整型和浮点数变量的方法是一样的,都是“变量名=字符串内容”,例如如下的示例: a = hello,我是Pytho

55、n3.6 ahello,我是Python3.6 print(a)hello,我是Python3.62.获取字符串长度要获取字符串的长度可以使用Python内置的len()函数,例如如下的示例: a = hello,我是Python3.6 len(a)#返回字符串a的长度173.索引字符串Python中的字符串跟C语言中的字符数组一样,也可以通过下标索引字符串,下标索引的顺序从左到右为(0,1,2,3,.,字符串长度-1),从右到左为(-1,-2,-3,.,-字符串长度),例如如下的示例。 a = hello,我是Python3.6 print(a6 + a7 + a-1 + a-2 + a-3

56、)#通过下标索引的方法索引字符串下标为6,7,-1,-2,-3的部分我是6.34.拼接字符串如果在print语句中想输出拼接的字符串的话,可以使用“+”运算符,也可以使用“*”运算符,例如如下的示例。 a = hey b = ha print(a * 3 + b * 4)#变量a输出三次,变量b输出四次,并拼接在一起heyheyheyhahahaha5.字符串切片如果程序只需获取字符串的一部分内容,这时就需要对字符串进行切片。Python对字符串的切片方法为:stringstart_index(包含):end_index(不包含):step这里的step表示的是切片间隔,默认为1,例如如下的示

57、例。 a = hey a0:2#截取索引值为0,2)的字符he a0:3:2 #截取索引值为0,3)间隔为2的字符hy如果需要将字符串的顺序反过来可以使用string:-1,例如如下的示例: a = hey a:-1#字符串逆置yeh如果想原样输出字符串还可以使用string:,string:或string:1,例如如下的示例: a:#原样输出字符串,下同hey a:hey a:1hey如果想以某个符号为间隔对字符串切片可以用split()函数,例如如下的示例: a = hey,ha a.split(,) #以逗号对字符串切片hey, ha最后返回的是一个列表,并可通过索引值获取列表的内容,例

58、如如下的示例: a.split(,)0#以逗号对字符串切片,且只输出下标为0部分hey6.查找字符串内容Python中查找字符串可以使用内置的find()函数、rfind()函数、index()函数、rindex()函数,例如如下的示例。 a = hey a.find(h)#从左开始查找,返回索引值00 a.rfind(e)#从右开始查找,返回索引值11 a.index(h)#从左开始查找,返回索引值00 a.index(c) #未查找到,报错Traceback (most recent call last): File , line 1, in ValueError: substring n

59、ot found a.rindex(e)#从右开始查找,返回索引值11 a.find(c)#未查找到,返回-1-1从上可以看出,find()函数和index()函数都能用来查找字符串中的内容,并且返回的都是查找内容在字符串中的索引值。不同的是当查找的内容不存在时,find()函数返回的索引值为-1,而index()函数则会报错。因此,当需要查找字符串中的内容时,使用find()函数会更可靠。上述函数对字符串的查找都是简单的查找。如果需要查找相对较复杂的内容,则需要使用正则表达式,这将会在本书的第10章中讲解。7.替换字符串替换字符串可以使用replace()函数,该函数返回的是一个新的字符串,

60、例如如下的示例: a = hey a.replace(e, i, 1)#将hey中的e替换为i,替换次数为1hiy8.转换大小写Python转换字符串大小写的函数有:capitalize()函数、title()函数、lower()函数、upper()函数,例如如下的示例: a = hey b = ha c = a * 2 + , + b * 2 print(c) #拼接字符串heyhey,haha print(c.capitalize()#字符串首字母大写Heyhey,haha print(c.title()#字符串每个单词第一个字母大写Heyhey,Haha print(c.lower()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论