Python编程基础-课件_第1页
Python编程基础-课件_第2页
Python编程基础-课件_第3页
Python编程基础-课件_第4页
Python编程基础-课件_第5页
已阅读5页,还剩209页未读 继续免费阅读

下载本文档

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

文档简介

Python编程基础2023/6/41搭建Python环境目录认识Python2

安装PyCharm并创建应声虫程序3认识PythonPython是一种结合了解释性、编译性、互动性和面向对象的高层次计算机程序语言。1991年发行、C实现起源设计哲学宣言优雅、明确、简单人生苦短,我用Python!认识PythonPython可以做什么?哪些人在用Python?网站后端程序员:Gmail、Youtube、Reddit、知乎、豆瓣自动化运维:批量处理大量的运维任务数据挖掘工程师数据分析师游戏开发者自动化测试机器学习认识Python根据IEEESpectrum2017最新的研究报告显示,在2016年排名第三的Python在今年已经成为世界上最受欢迎的语言,C和Java分别位居第二和第三位。认识PythonPython特点简单、易学免费、开源可扩展性可嵌入性可移植性跨平台性(Linux、Windows)丰富的第三方类库支持网络编程、互动模式认识PythonPython语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能无所不包,覆盖科学计算、数据挖掘(分析)、Web开发、数据库接口、数据架构、机器学习、图形系统多个领域,并且大多成熟而稳定。借助于拥有基于标准库的大量工具、能够使用低级语言作为其他库接口使Python已成为一种强大的应用于其他语言与工具之间的胶水语言。1搭建Python环境目录认识Python2

安装PyCharm并创建应声虫程序3搭建Python环境在Windows平台安装Python的步骤如下。打开浏览器,访问Python官网https://www.P,单击“Downloads”菜单下的“Windows”版本。搭建Python环境找到Python3.6.0的安装包,如果Windows版本是32位的,则单击“Windowsx86executableinstaller”版本,然后下载。如果Windows版本是64位的,则单击“Windowsx86-64executableinstaller”版本,然后下载。

搭建Python环境下载完成后,双击运行所下载的文件,此时会弹出一个Python安装向导的窗口。勾上“AddPython3.6toPATH”,然后单击“Customizeinstallation”按钮。搭建Python环境默认选择,单击“Next”按钮。在弹出的窗口中可以修改安装路径。等待安装完之后,会弹出安装成功的窗口。搭建Python环境打开命令提示符窗口,输入“python”,会出现以下两种情况。情况一:说明Python已经安装成功。情况二:Windows会根据一个PATH环境变量设定的路径去查找python.exe,如果没有找到就会报错。

情况一情况二搭建Python环境如果出现情况二时,需要将python.exe所在的路径添加到PATH中。右键单击桌面的“计算机”图标,选择“属性”选项。在弹出的窗口中单击“高级系统设置”按钮。

搭建Python环境在弹出的窗口中双击“环境变量”按钮,然后找到系统变量窗口下的“Path”。搭建Python环境双击打开“Path”按钮,在弹出的窗口中可编辑变量值,在变量值的后面添加Python的安装路径,且用“;”(即英文状态下的分号)隔开。例如安装路径为D:\ProgramFiles\Python36,则添加的变量值为“;D:\ProgramFiles\Python36\”。单击“确定”按钮。再次打开命令提示符窗口,输入“python”,即会出现情况一的界面,说明已经配置好Python的环境变量。搭建Python环境大多数Linux发行版,如CentsOS、Debian、Ubuntu等,都已经自带Python2.x版本的主程序。目前最新版的Ubuntu已经自带了Python3.x版本的主程序,对于没有安装Python3.x版本的系统,可自行安装。下面以CentsOS7为例,安装Python3.6.0的步骤如下。打开浏览器,访问Python官网https://www.P,单击“Linux/UNIX”版本。搭建Python环境找到Python3.6.0的压缩包,单击“Gzippedsourcetarball”版本,然后下载Gzippedsourcetarball。搭建Python环境在安装Python之前,要确保系统中已经有了所有必要的开发依赖。执行以下命令可安装使用的依赖。yum-ygroupinstalldevelopmentyum-yinstallzlib-devel解压下载好的“Python-3.6.0.tgz”文件,打开终端(terminal),并进入到解压后的Python-3.6.0目录下搭建Python环境自定义安装目录后进行安装,如安装到/usr/local/python3目录下,执行:./configure--prefix=/usr/local/python3make&&makeinstall其中,--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr/local/bin,库文件默认放在/usr/localb,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr/local,这样会比较凌乱。如果配置了--prefix,则可以把所有的资源文件放在自定义目录下,就不会出现杂乱现象。./configure命令执行完毕之后,创建一个文件creatingMakefile,供make命令使用,执行makeinstall之后就会把程序安装到指定的目录中去。搭建Python环境安装成功之后,进入自定义安装目录,执行“ln-s-f/usr/local/python3/bin/python3.6/usr/bin/python3.6”命令,创建软连接。执行“python3.6–v”查看Python3.6.0是否安装成功。执行命令“python3.6”,右图界面即说明安装成功。搭建Python环境安装Python成功之后,就可以正式开始Python之旅了。Python的打开有三种方式:Windows的命令行工具(cmd)、带图形界面的PythonShell–IDLE、命令行版本的PythonShell–Python3.6。1.Windows的命令行工具(cmd)

cmd即电脑命令行提示符,是windows环境下的虚拟DOS窗口。在Windows系统下,打开cmd有三种方法。(1)同时按“win+R”快捷键,其中“win”键是键盘上的开始菜单键。在弹出的窗口中输入“cmd”,单击“确定”按钮,即可打开cmd。(2)可以通过所有程序查找搜索到cmd。单击“cmd.exe”按钮或按回车键即可打开cmd。(3)在C:\Windows\System32路径下找到cmd.exe,双击“cmd”文件。(4)打开cmd后,输入“Python”,按回车键,出现“>>>”符号后,说明已经进入Python交互式编程环境。此时输入“exit()”即可退出。搭建Python环境2.带图形界面的PythonShell–IDLE(PythonGUI)IDLE是开发Python程序的基本IDE(集成开发环境),由GuidovanRossum亲自编写(至少最初的绝大部分由他编写)。一般IDLE适合用来测试,演示一些简单的代码的执行的效果。在Windows系统下,安装好Python后,可以在开始菜单中,找到IDLE,单击“IDLE”按钮即可打开。

搭建Python环境3.命令行版本的PythonShell–Python3.命令行版本的PythonShell–Python3.6打开方法和IDLE的打开方法是一样的。在Windows系统下,在开始菜单中找到命令行版本的Python3.6(64-bit),单击后即可打开。

1搭建Python环境目录认识Python2

安装PyCharm并创建应声虫程序3安装PyCharm并创建应声虫程序集成开发环境(IntegratedDevelopmentEnvironment)简称IDE,是一种辅助程序开发人员进行开发工作的应用软件,在开发工具内部就可以辅助编写代码、并编译打包成为可用的程序,有些甚至可以设计图形接口。IDE是集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。在Python的学习过程中少不了IDE,这些工具可以帮助开发者加快开发速度,提高效率。在Python中常见的IDE有Python自带的IDLE、PyCharm、JupyterNotebook、Spyder等,下面简单介绍这几款常见的IDE。(1)IDLE(2)PyCharm(3)JupyterNotebook(4)Spyder。一款专门面向和Python科学库(即Scipy)打交道的IDE,它集成了pyflakes、pylint和rope。Spyder是开源的(免费的),提供了代码补全、语法高亮、类和函数浏览器,以及对象检查的功能。安装PyCharm并创建应声虫程序PyCharm是由JetBrains打造的一款PythonIDE,带有一整套可以帮助Python开发者提高工作效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。PyCharm提供一些高级功能,以用于支持Django框架下的专业Web开发。还提供了一些很好的功能用于Django开发,同时支持GoogleAppEngine,并且PyCharm支持IronPython。这些功能在先进代码分析程序的支持下,使PyCharm成为Python专业开发人员和刚起步人员使用的有力工具。安装PyCharm并创建应声虫程序PyCharm可以跨平台使用,分为社区版和专业版,其中社区版是免费的,专业版是付费的,对于初学者来说两者差距不大。在使用之前需安装PyCharm,具体安装步骤如下。打开PyCharm官网(/pycharm),单击“DOWNLOADNOW”位置。选择Windows系统的社区版,单击“DOWNLOAD”键即可进行下载。安装PyCharm并创建应声虫程序下载完成后,双击安装包进行安装,单击‘’Next‘’按钮。自定义软件安装路径,建议不要使用中文字符,单击‘’Next‘’按钮。

安装PyCharm并创建应声虫程序根据自己电脑的系统选择位数,创建桌面快捷方式并关联“.py”文件,单击“Next”按钮。单击“Install”按钮默认安装。安装完成后,单击“Finsh”按钮。安装PyCharm并创建应声虫程序双击桌面上的快捷方式,在弹出的对话框中选择不导入开发环境配置文件,单击“OK”按钮。根据自己的喜好选择IDE主题与编辑区主题,本书使用Darcula主题。由于更改了主题,所以需要重启IDE,单击“OK”按钮即可。安装PyCharm并创建应声虫程序重启后,会弹出如的对话窗口,单击‘’CreateNewProject‘’按钮创建新项目。自定义项目储存路径,IDE默认关联Python解释器,单击‘’Create‘’按钮。

安装PyCharm并创建应声虫程序IDE提供的提示,可以选择在启动时不显示提示,单击“Close”按钮。这样就进入了PyCharm,单击左下角的符号可显示或隐藏功能侧边栏。下面简单介绍怎么使用PyCharm。

安装PyCharm并创建应声虫程序新建好项目(此处项目名为python)后,接下来要新建一个.py文件。右键单击“python”这个项目名,选择“New”栏下的“PythonFile”。在弹出的窗口中,输入.py文件名,单击“OK”按钮即可打开此脚本文件,如果是首次安装,则此时运行的符号是灰色的,处于不可触发的状态,这时需要设置控制台。

安装PyCharm并创建应声虫程序单击运行符号左边的倒三角符号,进入“Run/DebugConfigurations”配置界面后,单击绿色的加号,新建一个配置项,并选择python。安装PyCharm并创建应声虫程序在右边的配置界面中,Name一栏里填写一个名字,单击Scrip选项,找到刚刚新建的study.py文件。单击“OK”按钮之后,运行的符号就会变成绿色的,此时就可以正常编程了。安装PyCharm并创建应声虫程序Python和其他高级语言一样,程序的基本构架都会有输入和输出部分,下面简单介绍一下Python的输入和输出应声虫程序。1.输出在Python语言中,实现数据的输出方式有两种:一种是使用print函数;另一种直接使用变量名查看该变量的原始值。(1)print函数print函数可以打印输出数据的输出操作,其语法结构如下。print(<expressions>)print语法结构里的<expressions>单词后边有s的复数,其含义是表达式可以是多个。如果有多个<expression>,则表达式之间用逗号隔开,其语法格式如下。print(<expression>,<expression>,..<expression>)安装PyCharm并创建应声虫程序在新建的.py文件中,输入print语句。>>>print('helloworld')helloworld可以看到每条print语句输出后都自动换了一行,如果要实现不换行,则需要在变量末尾加上逗号。如第2行语句用逗号连接两个字符串,在输出的时候字母“o”和“w”中间有空格。(2)直接使用变量名查看该变量的原始值在交互式环境中,为了方便,可以直接使用变量名查看该变量的原始值,以达到输出的效果。>>>character="helloworld">>>character'helloworld'也可以直接在交互式环境中运行“helloworld”,实现输出。>>>"helloworld"'helloworld‘安装PyCharm并创建应声虫程序2.输入在Python里可以通过input函数从键盘获得用户的数据输入,其语法结构如下。input(<prompt>)input函数的形参prompt是一个字符串,用于提示用户输入数据。input函数的返回值是字符串型的。>>>character=input('inputyourcharacter:')>>>print(character)inputyourcharacter:第1行使用了input函数用于接收用户数据,当用户输入数据后,input函数会把输入数据传给等号左边的character变量来保存输入的数据。第2行调用print打印character变量的值,所以执行第2行后会打印字符串出“inputyourcharacter:”,以此作为新的提示符,输入“helloworld”,可以完整的输出“helloworld”。安装PyCharm并创建应声虫程序若想依次打印出“first:”和“second:”,可以用字符串拼接方式。>>>x=input("first:")>>>y=input("second:")>>>print(x+y)在执行第3行后,会依次打印出“first:”和“second:”,则需要依次输入“hello”和“world”,可以完整的输出“helloworld”。

PPT问题反馈:

/tj/840.jhtmlPython编程基础2023/6/41Python基础数据类型目录Python固定语法2

常用操作运算符3Python固定语法计算机语言种类很多,总体可以分为三大类,分别是高级语言、汇编语言、机器语言。Python是一个结合解释性、编译性、互动性和面向对象的高层次脚本语言,也是一种高级语言。由于Python易学习,并且具有广泛而丰富的标准库及第三方库的特点,使它可以和其它语言很好的融合在一起,所以也被称为“胶水语言”。Python的设计目标之一是让代码具备高度的可阅读性,它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观,而不像其他如C、Pascal等静态语言那样需要重复书写声明语句,经常出现特殊情况和意外。Python固定语法#-*-coding:utf-8-*-Python3安装后,系统默认其源码文件为UTF-8编码。在此编码下,全世界大多数语言的字符可以同时在字符串和注释中得到准确编译。大多数情况下,通过编辑器编写的Python代码默认保存UTF-8编码脚本文件,系统通过Python执行该文件时就不会出错。但是如果编辑器不支持UTF-8编码的文件,或者团队合作时有人使用了其他编码格式,Python3就无法自动识别脚本文件,造成程序执行错误,这时候对Python脚本文件进行编码声明就尤为重要了。比如,GBK脚本文件在没有编码声明时,执行文件时就会出错,经编码声明后脚本就可以正常执行。为源文件指定特定的字符编码,需要在文件的首行或者第二行插入一行特殊的注释行,通常使用的编码声明格式如下。Python固定语法Python注释行的用法。1.单行注释>>>print(“Hello,World!”)#这是一个在代码后面的注释2.多行注释在实际应用中,常常会有多行注释的需求。同样也可以在每一行前加#号就行。(1)井号注释(2)单引号注释

’’’该多行注释使用的是三个单引号’’’(3)双引号注释“““该多行注释使用的是三个双引号”””Python固定语法多行语句:多行一个语句;一行多个语句。多行一个语句,一般情况下是一行写完一条语句,但是如果语句太长,就会使得语句冗长不很美观,通过反斜杠(\)可以实现一个长语句的换行,又不至于被机器识别成多个语句。>>>total=applePrice+\…bananaPrice+\…pearPrice但是Python中在[],{},()里面的多行语句在换行时是不需要使用反斜杠(\)的。>>>total=[applePrice,…bananaPrice,…pearPrice]一行多语句,通常是在短语句中应用比较广泛,使用分号(;)对多个短语句实现隔离,这个就可以在同一行实现多个语句。>>>applePrice=8;bananaPrice=3.5;pearPrice=5Python固定语法

标识符在机器语言中是一个被允许作为名字的有效字符串。Python中标识符主要体现在变量、函数、类、模块、对象等的命名。Python中对标识符有如下几点规定。(1)标识符可以由字母、数字和下划线组成。(2)标识符不能以数字开头,以下划线开头的标识符具有特殊的意义,使用时需要特别注意。以单下划线开头(如_foo)的标识符代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“fromxxximport*”而导入。以双下划线开头(如__foo)的标识符代表类的私有成员。以双下划线开头和结尾(如__foo__)的标识符代表Python里特殊方法专用的标识,如__init__()代表类的构造函数。(3)标识符字母区分大小写,例如“Abc”与“abc”是两个标识符。(4)标识符禁止使用Python中的保留字。1Python基础数据类型目录Python固定语法2

常用操作运算符3Python基础数据类型数据类型数值型(不可变)整数型:Python3没有Long类型。浮点型复数:复数由实数和虚数构成,a+bj。布尔值(逻辑型)日期型:datatime模块字符型(不可变)Python基础数据类型>>>importkeyword#加载keyword库>>>keyword.iskeyword(“and”)#判断“and”是否为保留字TRUE>>>and=“我是保留字”#以保留字作为变量名

File"<stdin>",line1and='我是保留字'^SyntaxError:invalidsyntax>>>strExample=“我是一个字符串”#创建一个字符串变量>>>len(strExample)#使用len函数查看字符串长度7>>>len=“特殊字符串命名”#使用len作为变量名>>>len(strExample)#len函数查看字符串长度会出错变量的命名严格遵守标识符的规则,Python中有一类非保留字的特殊字符串(如内置函数名),这些字符串具有某种特殊功能,虽然用于变量名时不会出错,但会造成相应的功能丧失。Python基础数据类型几种命名法(1)大驼峰(uppercamelcase)所有单词的首字母都是大写,例如“MyName,YouFamily”……大驼峰一般用于类的命名。(2)小驼峰(lowercamelcase)第一个单词的首字母为小写字母,其余单词的首字母都采用大写字母,例如“myName”,“youFamily”……小驼峰用在函数名和变量名中的情况比较多。(3)下划线(_)分隔所有单词都采用小写字母,中间用下划线(_)分隔开,例如“my_Name,you_Family”……关于要使用哪种方法去对变量命名,并没有一个统一的说法,重要的是一旦选择好了一种命名方式,在后续的程序编写过程保持一致的风格即可。Python基础数据类型变量值就是要赋给变量的数据,在Python中有六个标准的数据类型:数字(Number)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Sets),其中列表、元组、字典、集合属于复合数据类型。最简单的变量赋值就是把一个变量值赋给一个变量名,只需要用等号(=)就可以实现。同时Python还可以将一个值同时赋给多个变量。>>>a=b=c=1#一个值赋给多给变量>>>a1>>>b1>>>a,b,c=1,2,”abc”#多个变量同时赋值>>>a1>>>b2>>>c‘abc’Python基础数据类型Python数值类型转换数据类型的转换,你只需要将数据类型作为函数名即可。int(x)将x转换为一个整数。float(x)将x转换到一个浮点数。complex(x)将x转换到一个复数,实数为x,虚数为0。complex(x,y)将x和y转换到一个复数,实数部分为x,虚数部分为y。Python基础数据类型函数返回值(描述)abs(x)返回数字的绝对值,如abs(-10)返回10ceil(x)返回数字的上入整数,如math.ceil(4.1)返回5exp(x)返回e的x次幂(ex),如math.exp(1)返回2.718281828459045fabs(x)返回数字的绝对值,如math.fabs(-10)返回10.0floor(x)返回数字的下舍整数,如math.floor(4.9)返回4log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0log10(x)返回以10为基数的x的对数,如math.log10(100)返回2.0max(x1,x2,...)返回给定参数的最大值,参数可以为序列。min(x1,x2,...)返回给定参数的最小值,参数可以为序列。modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。pow(x,y)x**y运算后的值。round(x[,n])返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。sqrt(x)返回数字x的平方根,返回类型为实数,如math.sqrt(4)返回2+0j数值型函数Python基础数据类型字符型类型基本操作str='Myname'长度:len(str)计数:str.count('y')下标:str.index('y')反转:str[::-1]合并:'char1'+'char2'+'char3'重复:'word'*3转换:int(string)#非数字型字符串不能转换成数值型切片与索引:str[0]str[-4]str[3:]str[:3]判断元素是否存在:'y'instr'na'notinstrMyname0123456-7-6-5-4-3-2-1Python基础数据类型(1)单引号(’)单引号标识字符串的方法可以将字符串用单引号括起来。>>>‘Thisisasentence.’#单引号标识字符串(2)双引号(”)双引号在字符串中的使用与单引号的用法完全相同,需要注意的是,单引号和双引号不能混用。>>>”Thisisasentence.”#双引号标识字符串

(3)三引号(’’’或者”””)三引号相比起单引号或者双引号,自身有一个比较特殊的功能,它能够标识一个多行的字符串,如一段话的换行、缩进等格式都会被原封不动地保留。>>>print(’’’\…Thisisthefirstsentence.…Thisisthesecondsentence.…Thisisthethirdsentence.’’’)字符型类型Python基础数据类型举个简单的例子,用单引号标识一个字符串的时候,如果该字符串中又含有一个单引号,比如“What’shappened”,这时Python不能辨识这段字符串从何处开始,又在何处结束。所以需要转义符,即前文提到的反斜杠(\),Python中间的单引号只是纯粹的单引号,不具备任何其他作用。比较特殊的是,用双引号标识一个包含单引号的字符串时不需要转义符,但是字符串中包含一个双引号,仍需要转义。另外,反斜杠可以用来转义其本身。>>>”What’shappened”#双引号标识含有单引号的字符串“What’shappened”>>>”Doublequotes(\“)”#双引号标识的字符串里面的双引号需要转义‘Doublequotes(“)’>>>print(’Backslash(\\)’)#转义反斜杠Backslash(\)此外,Python中还可以通过给字符串加上一个前缀r或者R来指定原始字符串。>>>print(r‘D:\name\python’)#用r(或者R)指定原始字符串D:\name\python字符型类型字符转义Python基础数据类型字符类型字符串格式化在Python中,字符串格式化使用与C中sprintf函数一样的语法。print("我叫%s今年%d岁!"

%

('小明',

10))

号描述

%c

格式化字符及其ASCII码

%s

格式化字符串

%d

格式化整数

%u

格式化无符号整型

%o

格式化无符号八进制数

%x

格式化无符号十六进制数

%X

格式化无符号十六进制数(大写)

号描述

%f

格式化浮点数字,可指定小数点后的精度

%e

用科学计数法格式化浮点数

%E

作用同%e,用科学计数法格式化浮点数

%g

%f和%e的简写

%G

%f和%E的简写

%p

用十六进制数格式化变量的地址

%e

用科学计数法格式化浮点数Python基础数据类型字符类型字符串格式化格式化字符串的函数str.format(),它增强了字符串格式化的功能。语法:通过{}来代替%。

print('{}awordshecangetwhatshe{}for.'.format('With','came'))通过关键字参数

print('{pre}awordshecangetwhatshe{verb}for.'.format(pre='With',verb='came'))映射:通过位置

print('{0}awordshecangetwhatshe{1}for.'.format('With','came'))Python基础数据类型字符类型字符串格式化通过下标索引p=['With','came']print('{0[0]}awordshecangetwhatshe{0[1]}for.'.format(p))相当于print(p[0]+''+'awordshecangetwhatshe'+''+p[1]+''+'for.')通过赋值city=input('writedownthenameofcity:')url='/microservice/weather?citypinyin={}'.format(city)Python基础数据类型字符类型字符串格式化精度常跟类型f一起使用

'{:.2f}'.format(321.33345)

'321.33'用,号还能用来做金额的千位分隔符

'{:,}'.format(1234567890)

'1,234,567,890'进制转换,b、d、o、x分别是二进制、十进制、八进制、十六进制'{:b}'.format(17)

'10001'

'{:d}'.format(17)

'17'Python基础数据类型函数名称函数说明S.split(sep,maxsplit)返回字符串中的单词列表,使用sep作为分隔符字符串,至多拆分maxsplit次。sep.join(S)连接字符串数组。将字符串、元组、列表中的元素以指定的分隔符连接生成一个新字符串。S.strip('chars')返回移除字符串头尾指定的字符('chars')生成的新字符串。默认为去除''。S.lower()将字符串所有大写字符变为小写。S.isalnum()检验字符串是否为空。如果字符串至少有一个字符,则返回true,否则返回false。S.count('chars')计算指定字符('chars')在字符串中出现的次数S.replace(old,new,count)返回字符串,其中所有的子串old通过new替换。如果指定了可选参数count,则只有前面的count个出现被替换。.lstrip()去掉字符串的左边空格。.rstrip()去掉字符串的右边空格。.upper()将小写字母完全变成大写字母。.lower()将大写字母完全变成小写字母。.capitalize()把字符串的第一个字母变成大写。.title()把所有单词的第一个字母变成大写。字符型内建函数1Python基础数据类型目录Python固定语法2

常用操作运算符3常用操作运算符Python的常用操作符算术操作符比较操作符赋值操作符按位操作符逻辑操作符成员操作符身份操作符常用操作运算符操作符描述示例+加法-返回两操作数相加的结果3+2返回5-减法-返回左操作数减去右操作数的结果3-2返回1*乘法-返回两操作数相乘的结果3*2返回6/除法-返回右操作数除左操作数的结果3/2返回1但3.0/2返回1.5%模-返回右操作数对左操作数取模的结果5/3返回2**指数-执行对操作指数的计算3**2返回9//取商-返回右操作数对左操作数取商的结果3.0/2返回1.0算术操作符常用操作运算符操作符描述示例==如果两个操作数的值相等则返回True,否则返回False3==2返回False!=如果两个操作数的值不等则返回True,否则返回False3!=2返回True<>

与!=效果相同3<>2返回True>

如果左操作数大于右操作数则返回True,否则返回False3>2返回True<

如果左操作数小于右操作数则返回True,否则返回False3<2返回False>=如果左操作数大于或等于右操作数则返回True,否则返回False3>=3返回True<=如果左操作数小于或等于右操作数则返回True,否则返回False2<=2返回True比较操作符常用操作运算符操作符描述示例=简单的赋值运算符,赋值从右侧操作数左侧操作数c=a+b将

a和b相加的值赋值给

c+=加法AND赋值操作符,它增加了右操作数左操作数和结果赋给左操作数c+=a相当于

c=c+a-=减法AND赋值操作符,它减去右边的操作数从左边操作数,并将结果赋给左操作数c-=a

相当于

c=c-a*=乘法AND赋值操作符,它乘以右边的操作数与左操作数,并将结果赋给左操作数c*=a

相当于

c=c*a/=除法AND赋值操作符,它把左操作数与正确的操作数,并将结果赋给左操作数c/=a

相当于c=c/a%=模量AND赋值操作符,它需要使用两个操作数的模量和分配结果左操作数c%=a相当于c=c%a**=指数AND赋值运算符,执行指数(功率)计算操作符和赋值给左操作数c**=a

相当于

c=c**a//=取商,并分配一个值,执行取商并将结果赋值给左操作数c//=a

相当于

c=c//a赋值操作符常用操作运算符操作符描述示例&按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0。a&b输出结果12。二进制值:00001100。|按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。a|b输出结果61。二进制值:00111101。^按位异或运算符:当两对应的二进位相异时,结果为1。a^b输出结果49。二进制值:00110001~按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~a输出结果-61。二进制值:11000011。<<

左移动运算符:运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0。a<<2输出结果240。二进制值:11110000。>>

右移动运算符:把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。a>>2输出结果15。二进制值:00001111。按位操作符常用操作运算符操作符描述示例and逻辑与运算符。当且仅当两个操作数为真则返回真,否则返回假。TrueandFalse返回Falseor逻辑或运算符。当且仅当有两个操作数至少一个为真则返回真,否则返回假TrueorFalse返回Truenot逻辑非运算符。用于反转操作数的逻辑状态。notTrue返回False逻辑操作符常用操作运算符操作符描述示例in如果在指定的序列中找到值返回True,否则返回False。xiny,x在y序列中,返回True。notin如果在指定的序列中没有找到值返回

True,否则返回False。xnoty,x不在y序列中,返回True。成员操作符常用操作运算符操作符描述示例isis是判断两个标识符是不是引用自一个对象。xisy,如果id(x)等于id(y),返回结果1。isnotisnot是判断两个标识符是不是引用自不同对象。xisnoty,如果id(x)不等于id(y),返回结果1。身份操作符常用操作运算符运算符描述**指数(最高优先级)~+-按位翻转,一元加号和减号(最后两个的方法名为+@和-@)*/%//乘,除,取模和取整除+-加法减法>><<右移,左移运算符&位‘and’^位运算符<=<>>=比较运算符<>==!=等于运算符=%=/=//=-=+=*=**=赋值运算符is,isnot身份运算符in,notin成员运算符not,or,and逻辑运算符运算符优先级比较PPT问题反馈:

/tj/840.jhtmlPython编程基础2023/6/41Python数据结构之列表目录认识Python数据结构2

Python数据结构之元组3Python数据结构之字典4Python数据结构之集合5认识Python数据结构Python中的绝大部分数据结构可以被最终分解为三种类型:集合(Set),序列(Sequence),映射(Mapping)。这表明了数据存储时所需的基本单位,其重要性如同欧式几何公理之于欧式空间。序列是Python中最为基础的内建类型。它分为七种类型:列表、字符串、元组、Unicode字符串、字节数组、缓冲区和xrange对象。常用的是:列表(List)、字符串(String)、元组(Tuple)。映射在Python的实现是数据结构字典(Dictionary)。作为第三种基本单位,映射的灵活使得它在多种场合中都有广泛的应用和良好的可拓展性。集合是独立于标量,序列和映射之外的特殊数据结构,它支持数学理论的各种集合的运算。它的存在使得用程序代码实现数学理论变得方便。认识Python数据结构Python有4个内建的数据结构,它们可以统称为容器(container),因为它们实际上是一些“东西”组合而成的结构,而这些“东西”,可以是数字、字符甚至列表,或是它们的组合。认识Python数据结构数据结构列表(可变)元组(不可变)字符串(不可变)字典(不可变)集合(不可变)1.可变数据类型可以直接对数据结构对象的内容进行修改(并非是重新对对象赋值操作),即可以对数据结构对象进行元素的赋值修改、删除或增加等操作。由于可变数据类型对象能直接对自身进行修改,所以修改后的新结果仍与原对象引用同一个id地址值,即由始至终只对同一个对象进行了操作。2.不可变数据类型与可变数据类型不同,不可变数据类型不能对数据结构对象的内容进行修改操作(对对象当中的元素进行增加、删除和赋值修改)。若需要对对象进行内容修改,则需要对其变量名进行重新赋值,而赋值操作会把变量名指向一个新对象,新旧对象两者是引用两个不同的id地址值。1Python数据结构之列表目录认识Python数据结构2

Python数据结构之元组3Python数据结构之字典4Python数据结构之集合5Python数据结构之列表基本操作all_list=[1,'word',{'like':'pythom'},True,[1,2]]all_list=list((1,'word',{'like':'pythom'},True,[1,2]))长度:len(all_list)计数:all_list.count('word')下标:all_list.index('word')反转:all_list[::-1]或者all_list.reverse()合并:list1+list2重复:all_list*3判断元素是否存在:'word'inall_list切片与索引:all_list[0]all_list[-4]all_list[1:4]all_list[:3]1、列表中每个元素都是可变的;2、列表中的元素是有序的,每个元素对应一个位置;3、列表可以容纳Python中的任何对象。Python数据结构之列表列表的增删改查fruit=[1,'word',True,'pear']month=['January','February','March','April']增添fruit.append(‘July’)fruit.extend(month)fruit.insert(1,'grap')fruit.insert(-1,'apple')删除fruit.remove('grape')fruit.remove(fruit[0])fruit.pop(2)delfruit[0:2]

fruit.clear()#清空1'word'True'pear'0123-4-3-2-1修改fruit[0]=('orange')fruit2=fruit.copy()查找fruit.index('pear')

fruit[3]Python数据结构之列表函数名称函数说明list.append(x)添加一个元素x到列表list的末尾。list.extend(L)将参数中的列表L添加到自身的列表list的末尾。list.insert(i,x)在下标为i的位置前插入一个元素。list.remove(x)删除列表第一个值为x的元素。如果没有这样的元素会报错。list.pop(i)删除列表指定位置的元素并返回它。如果不输入这个参数,将删除并返回列表最后一个元素。list.count(x)统计元素x出现的次数。list.reverse()反转列表中的元素。list.index(x)返回列表第一个值为x的元素的下标。如果没有这样的元素会报错。list(enumerate(list))将list列表中每个元素的下标与对应元素合成新元素(i,list[i])。print([ifori,xinenumerate(list)ifx==3])找出所有元素x为3的下标。list.sort()对原列表进行排序,不能重新赋值。new_list=list.sorted()对原列表进行排序,可以重新赋值。列表内建函数1Python数据结构之列表目录认识Python数据结构2

Python数据结构之元组3Python数据结构之字典4Python数据结构之集合5Python数据结构之元组元组与列表和字符串一样,是序列的一种。而元组与列表的唯一不同的元组不能修改,元组和字符串都具有不可变性。列表的可变性可能更方便处理复杂问题,例如更新动态数据等,但很多时候不希望某些处理过程修改对象内容,例如敏感数据,这就需要元组的不可变性。tup=

('Google',

'Runoob',

1997,

2000)tup1=

(50,)#元组中只包含一个元素时,要在元素后面添加逗号长度:len(tup)计数:tup.count('Google')下标:tup.index('Google')反转:tup[::-1]合并:tup1+tup2重复:tup*3判断元素是否存在:'Google'intup切片与索引:tup[0]tup[1:4]tup[:3]元组解包:A,B,C,D=tup#将元组中各元素分别赋值给对应变量Python数据结构之元组元组内建函数函数名称函数说明tuple.count()记录某个元素在元组中出现的次数。tuple.index()获取元素在元组当中第一次出现的位置索引。sorted()创建一个对元素进行排序后的列表。len()获取元组长度,即元组元素个数。+将两个元组合并为一个元组。*重复合并同一个元组为一个更长的元组。1Python数据结构之列表目录认识Python数据结构2

Python数据结构之元组3Python数据结构之字典4Python数据结构之集合5Python数据结构之字典字典(Dictionary)是基础数据结构映射(Mapping)的一种。序列是按照顺序来存储数据的,而字典是通过键存储数据。字典的内部实现是基于二叉树(BinaryTree)的,数据没有严格的顺序。字典将键映射到值,通过键来调取数据。如果键值本来是有序的,那么我们不应该使用字典,如映射:直接用列表[‘A’,’B’,’C’]即可,字典的效率比列表差得多。但是在很多情形下,字典比列表更加适用。比如我们手机的通讯录(假设人名均不相同)可以使用字典实现,把人的名字映射到一个电话号码,由于名字是无序的,不能直接用一个列表实现,使用字典直接高效。Python数据结构之字典字典的增删改查code={'BIDU':'Baidu','SINA':'Sina','YOKU':'Youku'}code=dict([('BIDU','Baidu'),('SINA','Sina'),('YOKU','Youku')])插入

code[‘QQ’]=‘tengxun’

code.update({'FB':'Facebook','TSLA':'Tesla'})删除

delcode['FB']code_QQ=code.pop(‘QQ’)

code.clear()#清空修改(赋值)

code['YOJKU']='Yoku'查找

code['FB']映射在Python的实现是数据结构字典1、键-值成对出现;2、键不能重复;3、键不可更改,值可修改;4、键来索引值。Python数据结构之字典字典的常用操作

code={'BIDU':'Baidu','SINA':'Sina','YOKU':'Youku'}len()测量字典中,键值对的个数

len(code)keys返回一个包含字典所有KEY的列表 code.keys()values返回一个包含字典所有value的列表 code.values()items返回一个包含所有(键,值)元祖的列表 code.items()has_key code.has_key(key)如果key在字典中,返回True,否则返回False。1Python数据结构之列表目录认识Python数据结构2

Python数据结构之元组3Python数据结构之字典4Python数据结构之集合5Python数据结构之集合Python有一种特殊的数据类型称为集合。因为它既不是序列也不是映射类型,更不是标量。集合是自成一体的类型。集合是唯一的,不可变的对象是一个无序集合。set1=

set([2,3,1,4,False,2.5,'one'])

set2={'A','C','D','B','A','B'}#创建可变集合set3=frozenset([3,2,3,‘one’,frozenset([1,2]),True])#创建不可变集合集合能够通过表达式操作符支持一般的数学集合运算。这是集合特有的操作,序列和映射不支持这样的表达式。Python数据结构之集合集合的并集由属于集合A或集合B的所有元素组成的集合,称为集合A和B的并集,数学表达式为A∪B={x|x∈A或x∈B}。在Python中可以使用符号“|”或者集合方法union函数来得出两个集合的并集。A={'足球','游泳','羽毛球','乒乓球'}B={'篮球','乒乓球','羽毛球','排球'}A|B#使用符号’|’获取并集A.union(B)#使用集合方法union函数获取并集Python数据结构之集合集合的交集同时属于集合A和B的元素组成的集合,称为集合A和B的交集,数学表达式为A∩B={x|x∈A且x∈B}。可以利用符号“&”或者集合方法intersection函数来获取两个集合对象的交集。A={'足球','游泳','羽毛球','乒乓球'}B={'篮球','乒乓球','羽毛球','排球'}A&B#使用符号’&’获取交集A.intersection(B)#使用集合方法intersection函数获取交集Python数据结构之集合集合的差集属于集合A而不属于集合B中的元素所构成的集合,称为集合A减集合B,数学表达式为A-B={x|x∈A,x∉B}。这个集合也称为集合A与集合B的差集。反过来,也有差集B-A={x|x∈B,x∉A}。在Python中可以简单地使用减号“-”来得到相应的差集,或者可以通过集合方法difference函数来实现。A={'足球','游泳','羽毛球','乒乓球'}B={'篮球','乒乓球','羽毛球','排球'}A-B#使用减号“-”来获取差集>>>A.difference(B)#使用集合方法difference函数获取差集Python数据结构之集合集合的异或集属于集合A或集合B,但不同时属于集合A和B的元素所组成的集合,称为集合A和B的异或集,其相当(A∪B)-(A∩B)。利用符号“^”或者集合方法symmetric_difference函数即可求出两个集合对象的异或集。A={'足球','游泳','羽毛球','乒乓球'}B={'篮球','乒乓球','羽毛球','排球'}A^B#获取异或集A.symmetric_difference(B)#使用集合方法symmetric_difference函数获取异或集Python数据结构之集合函数名称函数说明set.add(x)往集合插入元素xset1.update(set2)把集合set2的元素添加到set1set.remove(x)删除集合中的元素xset.discard(x)删除指定元素,但是如果集合中没有的话就什么也不做set.pop()随机删除一个,并返回该值set.clear()清空set1.update(set2)把集合set2的元素添加到set1(元素可能重复)set1.union(set2)set1和set2的并集(元素不重复)ersection(set2)set1和set2的交集set1.difference(set2)set1和set2的差,两个集合都不属于set1.issuperset(set2)判断set1是否是set2的超集set1.symmetric_difference(set2)set1和set2的对称补集集合内建函数PPT问题反馈:

/tj/840.jhtmlPython编程基础2023/6/41循环目录条件分支语句2

嵌套循环3列表解析4if布尔表达式1:

分支注意,每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块。使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。if语句的基本结构if语句实现条件分支,需要用到布尔表达式,格式如下。标准值False和None,数字0和所有空序列都为False,其余的单个对象都为True。在表达式运算的过程中,True会视为数值1,False会视为数值0,这与其他编程语言是相似的。逻辑表达式是布尔表达式的一种,逻辑表达式指的带逻辑操作符或比较操作符(如>,==)的表达式。if语句的基本结构布尔表达式满足条件返回真>>>score=91>>>score>=90&score<=100True程序只对成绩进行了一次判断,条件满足的时候,则返回真,打印的结果就是“本次考试:成绩等级为A”。>>>score=91>>>ifscore>=90&score<=100:…print('本次考试,成绩等级为:A')本次考试,成绩等级为:Aif语句的基本结构示例if布尔表达式1:

分支一elif布尔表达式2:

分支二else:

分支三多路分支if语句设置多路分支的一般格式如下。程序会先计算第一个布尔表达式,如果结果为真,则执行第一个分支的所有语句;如果为假,则计算第二个布尔表达式;如果第二个布尔表达式结果为真,则执行第二个分支的所有语句;如果结果仍然为假,则执行第三个分支的所有语句。如果只有两个分支,那么不需要elif,直接写else即可,如果有更多的分支,那么需要添加更多的elif语句。Python中没有switch和case语句,多路分支只能通过if-elif-else来实现。注意整个分支结构中是有严格的退格缩进要求的。多路分支描述>>>score=59>>>ifscore<60:...print('考试不及格')>>>else:...print('考试及格')考试不及格多路分支示例1循环目录条件分支语句2

嵌套循环3列表解析4到目前为止的程序都是一条一条语句顺序进行,如果要让程序重复地做一件事情,就只能重复地写相同的代码,操作比较繁琐。此时需要掌握一个重要的方法——循环。使用循环在一定情况下可以使你的代码运行效率更高。循环for循环在Python中是一个通用的序列迭代器,可以遍历任何有序的序列,如字符串、列表、元组等。程序语言的学习是一个循环的过程,与其他学科不同,程序语言的知识是相互紧扣的。Python中的for语句接受可迭代对象,如序列和迭代器作为其参数,每次循环调取其中一个元素。Python的for循环看上去像伪代码,非常简洁。for循环for循环示意图for循环对字符串,列表的遍历>>>forain['e','f','g']:... print(a)efg>>>forain'string':... print(a)stringfor循环示例while布尔表达式: 程序段while循环while循环也是最常用的循环之一,Python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。格式如下。只要布尔表达式为真,那么程序段将会被执行,执行完毕后,再次计算布尔表达式,如果结果仍然为真,那么再次执行程序段,直至布尔表达式为假。while循环示意图当s的值小于等于一的时候打印出s,这里的结果就是循环到1,,一共打印了两次计数。>>>s=0>>>while(s<=1):... print('计数:',s)... s=s+1计数:0计数:1当条件判断语句即布尔表达式一直为真时,就会进行无限次循环,无限循环可以使用CTRL+C来中断循环。while循环示例Python要像C语言的格式进行循环,实际上需要的是一个数字序列,range函数能够快速构造一个数字序列。例如range(5)或range(0,5)即为序列0,1,2,3,4。注意这里包括0,但不包括5。Python中foriinrange(5)的效果和C中for(i=0;i<5;i++)的效果是一样的。range(a,b)能够返回列表[a,a+1,…,b-1](注意不包含b),这样for循环就可以从任意起点开始,任意终点结束。range函数经常和len函数一起用于遍历整个序列。len函数能够返回一个序列的长度,foriinrange(len(L))能够迭代整个列表L的元素的索引。直接使用for循环似乎也可以实现这个目的,但是直接使用for循环难以对序列进行修改(因为每次迭代调取的元素并不是序列元素的引用),而通过range函数和len函数可以快速通过索引访问序列并对其进行修改。range函数>>>foriinrange(0,5):... print(i)#result:0,1,2,3,4>>>foriinrange(0,6,2):... print(i)0,2,4#相邻元素的间隔为3range函数示例#直接使用for循环难以改变序列元素>>>L=[1,2,3]>>>forainL:... a+=1#a不是引用,L中对应的元素没有发生改变>>>print(L)[1,2,3]#range与len函数遍历序列并修改元素>>>foriinrange(len(L)):... L[i]+=1#通过索引访问>>>print(L)[2,3,4]range函数break语句的作用,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。br

温馨提示

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

评论

0/150

提交评论