Python程序设计基础及应用(微课版)课件 -第2章 语言基础_第1页
Python程序设计基础及应用(微课版)课件 -第2章 语言基础_第2页
Python程序设计基础及应用(微课版)课件 -第2章 语言基础_第3页
Python程序设计基础及应用(微课版)课件 -第2章 语言基础_第4页
Python程序设计基础及应用(微课版)课件 -第2章 语言基础_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

《Python程序设计基础及应用》配套课件第2章

语言基础2.1

标识符和变量2.2

运算符2.4基本输入和输出2.6案例实战2.5编码规范2.3

表达式2.1标识符和变量2.1标识符和变量编程中,标识符、变量和关键字是三个基本概念标识符是编程中用于标识变量、函数、类、模块等实体的名称变量是编程中用于存储数据的容器,每个变量都有一个独一无二的名称(即标识符),通过这个名称可以访问和修改存储的数据关键字是Python语言中预定义的、具有特殊含义的单词。它们用于控制程序的结构和语法,不能用作变量名、函数名或任何其他标识符Python里变量、函数、类,本质都是同一个命名空间里的「名字绑定」,没有特殊保护,后定义的会覆盖先定义的,本质就是名字绑定被重新赋值1.标识符Python中,标识符是用户为变量、函数、类和其他对象定义的名称,是编程语言中允许作为名字的有效字符串集合有效的标识符必须以大小写字母“a-z”、“A-Z”或下划线“_”开头,后面跟任意数量的字母、数字“0-9”或下划线。命名标识符的时候,要遵循命名规则。命名规则很多,常见的有:第一个字符必须是字母或者下划线_,禁止使用Python关键字作为标识符,使用有意义的名字等2.关键字Python中,关键字是那些具有特殊语法意义的标识符。关键字在Python解释器中具有预定义的作用,并且不能被用作变量名、函数名、类名或其他标识符的名称Python3.12.6关键字共有35个,如if、and、break、elif、for、while、try、except等软关键字(softkeyword):仅在特定语法位置才是关键字、其他地方可当标识符用的特殊保留字,不会全局保留,不破坏旧代码兼容性硬关键字(如if、class、def):全局保留,任何位置都不能当变量名,写if=3直接报语法错。3.变量对象是数据的抽象,Python程序中的所有数据由对象或对象之间的关系表示每一个对象都有一个标识(identity)、类型和值Python中对象通常存放在变量中变量是指向某个对象的名字,是对象的命名每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建变量的命名规则

变量的命名规则遵守标识符的命名规则。变量的赋值变量只有被创建或者赋值后才能使用。数据类型

Python是一种动态类型的语言,不需要在声明变量时指定其数据类型,而且变量的

类型是可以随时变化的,Python会根据赋给变量的值来自动确定其数据类型3.变量Python正规规范命名示例(变量名,符合PEP8)变量:小写+下划线,见名知意不能和关键字、内置函数重名不用拼音、不用大小写混搭、不搞缩写看不懂3.变量2.2运算符1.运算符概述

运算符是对操作数进行运算的符号,表达式则是由运算符和操作数(即参与运算的数据)组成的,用于计算一个值。Python支持多种类型的运算符,通过运算符来执行各种复杂的计算和操作Python中的运算符按照功能划分为算术运算符、关系运算符、逻辑运算符、位运算符、身份测试运算符、成员测试运算符、矩阵相乘运算符和赋值运算符。按照操作数的个数分为单目运算符和双目运算符每种数据类型支持的运算不尽相同,在使用变量时,需要根据数据类型来确定所进行的运算是否合适,同一个运算符对于不同类型变量操作的含义也不尽相同2.

算术运算符

算术运算符包括:加法(+)、减法(-)、乘法(*)、除法(/)、整除(//)、取余(%)和幂运算(**)。运算符含义举例+、-加法(字符串连接)、减法(集合差集)2+3,10–5,"h"+"you",{1,2,3}–{2,3}+、-正号(用于保持数值的正值,对数值本身没有实际影响)、负号(相反数)-6**幂运算2**3/除法(真除法)4/3//整除(向下取整)4//3*乘法(字符串重复)2*3,"hello"*3%求余数、指定字符串格式5%22.

算术运算符

注意:Python不支持C语言中的自增“++”和自减“--”运算符。不同数据类型在一起进行算术运算时,按照下面原则进行隐式类型转换:当有一个操作数的类型是复数时,其它数据都自动转换成复数类型当有一个操作数的类型是小数时,其它数据都自动转换成小数类型不支持数字和字符之间的隐式转换。2.

算术运算符>>>3.0/50.6>>>-3//5-1>>>3.1%21.1>>>6.3%2.12.0999999999999996 #

浮点数按照IEEE754规范存储,有一定精度2.

算术运算符*运算符除了表示算术乘法,还可用于列表、元组、字符串这几个序列类型与整数的乘法,表示序列元素的重复,生成新的序列对象。字典和集合不支持与整数的相乘,因为其中的元素是不允许重复的。>>>True*33>>>False*30>>>[1,2,3]*3[1,2,3,1,2,3,1,2,3]>>>'abc'*3'abcabcabc'2.

算术运算符+运算符除了用于算术加法以外,还可以用于列表、元组、字符串的连接,但不支持不同类型的对象之间相加或连接。>>>[1,2,3]+[4,5,6]

#

连接两个列表[1,2,3,4,5,6]>>>(1,2,3)+(4,)

#

连接两个元组(1,2,3,4)>>>'abcd'+'1234' #连接两个字符串'abcd1234'>>>'A'+str(1)>>>True+3 #True等价于14>>>False+3 #False等价于032.

算术运算符**运算符表示幂乘。>>>3**2 #3的2次方,等价于pow(3,2)9>>>9**0.5 #9的0.5次方,平方根3.0>>>3*2**3 #注意优先级24>>>12//3*2/3**20.8888888888888888>>>3**3**3

#连续幂运算符,从右向左计算76255974849873.

逻辑运算符

逻辑运算符and、or、not常用来连接多个条件表达式构成更加复杂的条件表达式,且and和or具有惰性求值或逻辑短路的特点,当连接多个表达式时只计算必须要计算的值and:当且仅当两个条件都为True时,结果为True,其余都为Falseor:当前仅当两个条件都为False时,结果为False,其余都为Truenot:取反编写复杂条件表达式时充分利用这个特点,合理安排不同条件的先后顺序,在一定程度上可以提高代码运行速度另外要注意的是,运算符and和or并不一定会返回True或False,而是得到最后一个被计算的表达式的值,但是运算符not一定会返回True或False3.

逻辑运算符

>>>3>5anda>3 #注意,此时并没有定义变量aFalse>>>3>5ora>3 #3>5的值为False,所以需要计算后面表达式NameError:name'a'isnotdefined>>>3<5ora>3 #3<5的值为True,不需要计算后面表达式True>>>3and5 #最后一个计算的表达式的值作为整个表达式的值5>>>3and5>2True>>>not3False>>>not0True4.

比较运算符比较运算符包括三类,值比较符(<、<=、>、>=、!=、==)、身份比较符(is、isnot)和成员测试符(in、notin)值比较符用于比较两个操作数的大小并返回一个布尔值(True、False),操作数可以是数字、字符串和容器类型身份比较符is用于比较两个对象的内存地址是否相同,可以使用id()函数来确定内存地址成员测试符in用于查找对象是否在列表、元组、字符串、集合和字典等序列数据中使用关系运算符的一个最重要的前提是,操作数之间必须可比较大小。4.

比较运算符比较运算符含义举例运算符含义举例<、<=小于、小于等于2<=3==相等值比较2==3>、>=大于、大于等于3>=1!=不等值比较2!=3is如果操作数指向同一对象,则返回True,否则返回Falsei=100j=100iisj#返回Trueisnot如果操作数指向不同对象,则返回True,否则返回Falsea=2.5b=3.0aisnotb#返回Truein如果在指定的序列中找到值时,返回True,否则返回False5in[3,5,6]#返回Truenotin如果在指定的序列中没有找到值时,返回True,否则返回False'5'notin'135'#返回False4.

比较运算符>>>‘Hello’>‘world’ #依次比较对应位置字符,一旦分出大小就结束False>>>"1"<"111" #短字符串更小True>>>[1,2,3]<[1,2,4] #比较列表大小True>>>‘Hello’>3 #字符串和数字不能比较TypeError:unorderabletypes:str()>int()>>>{1,2,3}<{1,2,3,4} #测试是否子集True4.

比较运算符>>>i=100>>>'5'notin'12345'>>>j=100False>>>iisjTruePython语言支持链式关系表达式,相当于多个表达式之间逻辑与的关系。>>>1<2<3 #等价于1<2and2<3True>>>2>=1>10 #等价于2>=1and1>10False>>>1<3>2 #等价于1<3and3>25.

赋值运算符赋值运算符用于计算表达式的值并传送给变量赋值运算符分为简单赋值运算符和增强赋值运算符简单赋值运算符是指“=”增强赋值运算符是指将二元运算和赋值语句合为一体,如+=、&=、<<=运算符含义举例运算符含义举例+=、-=、/=、//=、*=、**=、%=算术增强赋值符,xop=y相等于x=xopyx=10x+=2x/=2x%=4<<=、>>=、&=、|=、^=位增强赋值符,xop=y相等于x=xopyx=2x<<=1x&=10=赋值运算符x=26.

位运算符位运算符将数字转换成二进制数来进行运算位运算符只能用于整型或字符串型数据,不能用于浮点型数据运算符含义举例运算符含义举例&按位与、集合交集2&3|按位或、集合并集2&6^按位异或、对称差集2&6~按位取反~10<<按位左移3<<2>>按位右移3>>26.

位运算符位运算符只能用于整数,其内部执行过程为:首先将整数转换为二进制数,然后右对齐,必要的时候左侧补0至相同长度,按位进行运算,最后再把计算结果转换为十进制数字返回“按位与”运算规则为1&1

=

1、1&0

=

0、0

&1

=

0、0

&

0

=

0,“按位或”运算规则为1|1

=

1、1|

0

=

0、1|1

=

1、0

|

0

=

0,“按位异或”运算规则为1

^

1

=

0、0

^

0

=

0、1

^

0

=1、0

^

1

=

1左移位时右侧补0,每左移一位相当于乘以2;右移位时左侧补0,每右移一位相当于整除以27.运算符优先级Python运算符有一套严格的优先级规则,强烈建议在编写复杂表达式时使用圆括号来明确说明其中的逻辑来提高代码可读性。结合律一般按照从左到右,但是**相反,从右到左算术运算符位运算符关系运算符逻辑运算符()、[]、**、+、-is、in低2.3表达式1.表达式概述

表达式是由变量、常量、运算符、函数调用、括号等构成的有意义组合体,表达式的返回值是一个单一值。表达式可以是简单的,也可以是复杂的,可以包含多个运算符和操作数。Python中表达式的使用非常灵活,可以出现在程序的任何地方,包括赋值语句、条件语句、循环语句以及函数调用等有3种特殊的表达式,分别是海象表达式、条件表达式(第3章详细介绍)和lambda表达式(第6章函数中详细介绍)。2.海象表达式海象表达式为Python开发者提供了一种简化代码、提高可读性的强大工具,特别适用于需要在表达式中同时进行赋值和使用值的场景。海象表达式的语法形式为:变量:=表达式海象运算符三个典型的应用场景:条件语句中的复杂计算循环中的数据处理列表推导式中的条件筛选2.4基本输入和输出1.

基本输入函数inputPython中的数据输入是通过input()函数来实现input()的一般格式为:input(['提示信息'])input()函数用来接收用户从键盘上的输入数据,无论用户输入时使用何种界定符input()函数的返回结果是字符串,使用时需要将其转换为相应的类型再进行处理评估函数eval()使用格式:eval(<字符串或字符串变量>)作用:去掉参数最外侧引号并执行余下语句的函数1.

基本输入函数input>>>x=input('Pleaseinput:')Pleaseinput:345>>>x'345'>>>int(x) #转换为整数345>>>eval(x) #对字符串求值345>>>x=input('Pleaseinput:')Pleaseinput:[1,2,3]>>>eval(x)[1,2,3]1.

基本输入函数input>>>x=input(‘Pleaseinputanumber:')Pleaseinputanumber:1>>>y=int(x)*10>>>y10>>>x=eval(input('Pleaseinput:'))Pleaseinput:123+10>>>x1331.

基本输入函数input>>>s1=input("请输入一组数字:")请输入一组数字:10,20,30,40>>>nums=list(map(int,s1.split(","))) #分割每一个子串,并转变为整数>>>nums[10,20,30,40]>>>s2=input("pleaseinputascore:")输入:123.45>>>score=float(s2)#转为小数结果:123.45>>>s3=input("pleaseinputanumber:")输入:1,2,3>>>number=eval(s3)#打包为元组结果:(1,2,3)2.

输出函数printprint():以字符形式向显示器输出结果的函数print()函数的格式如下:print([objects][,sep=''][,end='\n'][,file=sys.stdout][,flush=False])

objects是输出的对象sep是对象之间插入的分隔符,默认是空格end是添加在输出文本最后的一个字符,默认是换行符file指定输出内容发送到的文件,默认是显示器flush指定输出的内容是否立即写文件1)

输出一个或者多个对象>>>print(123,"Python",[1,2,3])123Python[1,2,3]2)

指定输出分隔符>>>print(123,"Python",[1,2,3],sep=';')123;Python;[1,2,3]3)

指定输出结尾符号>>>foriin[[1,2],[3,4],5]: print(i,end=";")[1,2];[3,4];5;2.

输出函数print4)指定输出文件>>>print(123,"Python",[1,2,3],file=open(r'c:\test.txt','w'),flush=True)5)

指定格式化串格式化时使用%运算符,格式是:'格式化串'%参数,其中格式化串可以包含格式化字符和常量字符串,Python的格式化字符和C语言的类似。>>>PI=3.141592653>>>print('PI=%10.3f’%PI) #字段宽10,精度3,右对齐PI=3.1422.

输出函数print2.5编码规范

为了提高代码的可读性和可维护性,减少错误,促进团队开发,编写Python代码时要遵守一定的编码规范。此规范通常被称为PEP(PythonEnhancementProposal,Python增强提案),它是Python官方提出的一份编码规范指南。(1)命名规则变量名、包名、模块名通常采用小写字母开头如果名称中包含多个单词,一般采用第一个单词全部小写,后面每一个单词首字母大写的驼峰表示法,如myBook。也可以采用下划线_分隔的全部小写形式,如student_name。常量建议使用全大写方式,如PI。类名采用首字母大写,多个单词使用驼峰表示法,如BookInfo。函数名一般采用小写字母,命名采用动宾式,如get_name()(2)代码缩进严格明确:缩进是语法的一部分,Python中的缩进代表程序块的作用域,缩进不正确会导致程序运行错误所属关系:表达代码间包含和层次关系的唯一手段

温馨提示

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

评论

0/150

提交评论