资源简介 (共37张PPT)3.2.Python语言程序设计(二)课堂回顾1.Python常见数据类型:(1)整型:数学中的整数;十六进制的形式(0x)(2)实型:数学中的实数;科学记数的形式(1.2e-5)(3)字符串型:用单引号或双引号或三引号表示(4)布尔型:只有两种值(True 和 False)2.Python运算符(1)算术运算符:**、*、/、//、%、+、-。(2)关系运算符:>、<、>=、<=、==、!=、in(3)逻辑运算符:not、and、or。(4)Python运算符的优先级(算术 > 关系 > 逻辑)注:Python是一种字母大小写敏感的编程语言,注意字母的大小写04PART THREE变量和赋值语句03 变量和赋值语句什么是变量?房间房间名称房间类型入住的客人变量变量名变量类型变量值房间_506=张三03 变量和赋值语句name李政言例如:我们要存放一个同学的名字、语文、数学、英语的成绩name=“李政言”这里我们用到的“=”称为赋值运算符,就是把右边的值赋予给左边的变量yw100yw=10003 变量和赋值语句常量与变量常量:程序运行过程中,其值不能改变的量。如3.14、2、 ' red '等。变量:程序运行过程中,其值可以改变的量。03 变量和赋值语句常量与变量常量:程序运行过程中,其值不能改变的量。如3.14、2、 ' red '等。变量:程序运行过程中,其值可以改变的量。03 变量和赋值语句赋值语句赋值语句的一般形式:变量名 = 表达式赋值符号a=5b=9t=aa=bb=ta、b的值分别为?a=9b=503 变量和赋值语句变量值的修改变量赋值以后,这个值一直存在,直到赋予新的值。计算圆的面积pi=3.14r=10S=pi*r*rprint(“s=“,s)s=314.0赋值运算符=的优先级要低于算术运算符* / + -所以程序是先计算表达式的值,再赋值给变量a=10a=a+5b=a+5print(a) ______print(b) ______1520a=a+5可缩写成a+=5。例如:sum=sum+1可缩写成sum+=1。类似的赋值运算符还有-= *= /= %=a=a+5可缩写成a+=5。例如:sum=sum+1可缩写成sum+=1。类似的赋值运算符还有-= *= /= %=03 变量和赋值语句注意事项:1、变量名由字母(包含汉字)、数字、下划线(_)组成,只能以字母和 _ (下划线) 开头。student_1( ) 1_student( )2、变量名不能和python保留字相同,比如 print input3、变量名区分大小写建议使用拼音、英文单词或他们的缩写例如 表示姓名的变量可以是 name xingming xm变量命名规则SUM ≠ sum ≠ Sum√×Python语言基础(变量及其命名)变量:指在程序运行过程中其值可改变的量,使用前不需要预先声明类型。Python变量命名规则:1.由字母、数字、下划线组成,如stu_12.不能以数字开头3.字母区分大小写,如a和A是两个变量4.不能使用保留字,如for,while,in,and等保留字不能作为变量名Python语言基础(变量的赋值)方法 含义 方法 含义x = 8 将数值8赋值给变量x x += 1 将变量x的值加1,与“x=x+1”等价x = a*b 将a*b的值赋值给变量x x -= 1 将变量x的值减1,与“x=x-1”等价x,y = 5,8 将数值5赋值给变量x 将数值8赋值给变量y x *= y 将变量x的值乘以y,与“x=x*y”等价x,y = “ab” 将字符“a”赋值给变量x 将字符“b”赋值给变量y x /= y 将变量x的值除以y,与“x=x/y”等价x = y = z =1 将数值1分别赋值变量x,y,z x %= y 将变量x的值对y求余数,与“x=x%y”等价练一练1.下列可以作为Python变量名的是A.1_stu B.if C.name@1 D.max_score2.下列语句不能进行赋值的是A.x,y=3,12 B.x*=5 C.x=y=24%3 D.x,y=4+8DD练一练3.下列变量名在Python中合法的是( )A.3touB.t#xC._btD.god C04PART THREE基本数据结构Python语言基础(基本数据结构)不可变1不可变10问答(学完思考):1、字符串是不可变的,所以一旦创建了,那么就不能修改,假设s=‘a’,那么执行s[0]=‘b’能修改s的值吗?如果是s=‘b’呢,会报错吗?2、通过索引定位,索引号从0开始,那么s=“abcdhelen”,问s[3]= ,如果想取到n,那么索引为多少?3、访问一定范围的元素用:实现,那么s=“abcdhelen”,问s[4:8]= ,s[4:9]=?两者的区别是什么所以结束元素序号是开区间,取不到的,取到的是结束元素序号的前一个元素4、要实现对s=“abcdhelen”进行逆序,通过索引实现还是切片?怎么做呢?04 基本数据结构字符串的定义:“”或‘’括起来的一串字符,标点符号也属于字符字符串长度计算:len();字符串索引:下标都是从0开始 str1[索引标号]str1=‘1234567’len(str1)=70索引示例:P736注意:三个引号括起来的内容表示为注释Python语言基础(基本数据结构)1. 序列元素的引用切片方式:序列的切片就是从序列中切分出小的子序列。切片格式:a[start:end:step]参数缺省值:[0:n:1]>>> a = ‘Hello’ # 创建字符串 >>> a[1:2] 或 a[1:2:] ‘e’ >>> a[1:5:2] 或 a[1::2] ‘el’ >>> a[:] ‘Hello’ >>> a[3:-1] ‘l’ >>> a[-5:-1:2] ‘Hl’ >>> a[-1:-5]‘’>>> a[::-1]‘olleH’序列的切片区间为左闭右开区间S=“merry heart.”Python语言基础(基本数据结构)04 基本数据结构列表(list)是Python中内置的有序可变序列,列表的所有元素放在一对中括号“[]”中,并使用逗号隔开,元素的类型可以不同。当不再使用时,可通过del命令删除列表,删除后不可再调用a_list = [] # 创建空列表b_list = [20, "张三", 177.6]c_list = list(range(10))a_list = [1, 2, 3]print(a_list)del a_listprint(a_list)当不再使用时,可通过del命令删除列表,删除后不可再调用04 基本数据结构创建列表时,将会开辟一块连续的空间,用于存放列表元素的引用,每个元素被分配一个序号即元素的位置(也叫索引)。索引值从 0 开始,从左到右不断递增。元素1 元素2 元素3 元素…… 元素n-1 元素n元素索引0 1 2 …… n-2 n-1正向索引,从左到右不断增大04 基本数据结构L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']#取L中的前三个数据print(L[0:3])#从索引 1 开始,取出 2 个元素出来:print(L[?:?])#['Michael', 'Sarah', 'Tracy']print(L[1:3])#['Sarah', 'Tracy']获取几个字符04 基本数据结构字典(dict)是一种映射类型,由若干”键(key) : 值(value)”组成, “键”和“值”之间用冒号隔开,所有“键值对”放在一对大括号“{ }”内,并用逗号分隔。其中“键”必须为不可变类型,在同一个字典中,“键”必须是唯一的,但“值”可以重复。a_dict = {} # 创建空字典b_dict = {"姓名":"张三", "年龄": 20}04 基本数据结构字典是无序的,不支持索引。主要通过字典对象[键]获取对应的值。此外,字典还提供了获取所有键值对、所有键、所有值等方法。print(a_dict["姓名"])print(a_dict["体重"])print(a_dict["籍贯"])“键”不存在时,报错。张三172KeyError: '籍贯'Python语言基础(基本数据结构)2. 字典元素的引用(序列名[索引] )与序列不同,字典中的元素是无序的,也就是字典元素没有索引。如果要引用字典元素,可以键为索引。键和值两者一 一对应,每个键只能对应一个值,且同一个字典中没有重复的键(键具有唯一性)。所以,我们可以根据唯一的键去查询与其对应的值。>>> dic = {‘张三’:‘男’,‘李四’:‘女’,‘王五’:‘男’} # 创建字典>>> print(dic[‘张三’])‘男’>>> print(dic[‘李四’])‘女’Python语言基础(基本数据结构)二、字典:字典和列表类似,可包含多个元素。1. 字典的格式字典中的每个元素包含两部分内容:键(key)和值(value)键和值在字典中成对出现,键和值用冒号分隔,各个对之间用逗号分隔,所有这些都包含在花括号“{ }”中。d = {key1:value1 , key2:value2 ,…}键通常用字符串或数值来表示,值可是任意类型的数据>>> dic = {‘张三’:‘男’,‘李四’:‘女’,‘王五’:‘男’}练一练1.已知字符串st=‘HiPython’,则st[-6:8]的值为A.‘nohtyp’ B.‘python’ C.‘on’ D.‘Python’2.已知列表a=[1,3,5,],b=[2,4,5],则a+b的结果为A.[1,2,3,4,5] B.[1,2,3,4,5,5]C.[1,3,5,2,4,5] D.列表不能整体相加3.已知列表a=[‘13’,’233’,’6’],b=[‘3’,’23’],则下列表达式中值为True的为A.a>b+[‘999’] B.b*2DCD4.下面哪一项是正确的创建字典的语句A.dic={a:10,b:15,c:20}B.dic={1:[10,10],2:[20,20]}C.dic={[10,10]:10,[20,20]:20}D.dic=[‘a:’’Tom’,’b:’’Jerry’,’a:’’Tony’]5.ch为字符串s中的最后一个字符,用Python语言表达为 。练一练Bch=s[-1]练一练6.有如下程序段:a = 2b = 3a *= ba += bprint(a)上述程序段运行之后打印出的a的值是( )9a=a*b=2*3=6a=a+b=6+3=9练一练7.变量x = "Hello,World!"中的“World”,请问代码应该如何写:x[6:11]Print(dict[‘Age’])8.有一个字典 dict = {'Name': 'Jian', 'Age': 18, 'Class': '001'},请问要得到字典中键为“Age”的值的代码是 。9. 下列选项中变量和数据结构不正确的是( )A._B4B.listC.创建字典: m={“李华”, “高三”, “98”}D.“hello ”*3的值为“hello hello hello ”10. 已知字符串a="python",则a[1]的值为( )A."p" B."py" C."Py" D."y"11. 已知字符串a="python",则print(a[1]+a[3])的值为( )A."yth" B."yt" C."py" D."yh"练一练CDD12. 已知字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' },要得到字典中的值'b',下列方法可行的是( )A.dict1[(1,2)] B.dict1{'b'} C.dict1[3] D.dict1['b1']13. 已知字典dict1={1001:”mali”, 1002:”lucy”, 1003:”jack”, 1004:”jhon” },要得到字典中的“jack”,下列方法可行的是( )A.dict1[2] B.dict1{1003}C.dict1[1003] D.dict1[“jack”]14. 中国大陆居民身份证由18位数字组成,其中第7至14位数字表示出生日期,用字符串变量s存储身份证号码,以下Python表达式中能提取出生日期的是( )A.s[7:14] B.s[6:13] C.s[7:-5] D.s[-12:-4]15 .已知a=["a","b","c",1,2,3],想要获取列表a中"b"和"c"的切片,下列语句正确的是( )A.print(a[b:c]) B. print(a[1:2])C. print(a[1:3]) D. print(a[1:-4])ACDCACDCA16. 若a="20230678",b="246",则表达式a[5:]+b[2:1:-1]*3的值为( )A. "24" B. "696" C. "678666" D. "0678444"17. 已知列表a=[1,2,3],则a*3的结果为 ( )A.[1,2,3] B.[3,6,9]C.[1,2,3,1,2,3,1,2,3] D列表不能做乘法运算,程序错误18.已知list=["Word","for","sent","city","piano"],则list[3][2]的返回值为( )A."e" B."o" C."t" D."a"CCCCCC19. 有如下Python程序段:a=''1357''list1=[''car'',''bus'',''bike'']list1[1]=a[1:3]print(list1)该程序段运行之后的结果为( )A. ['car', 'bus', 'bike'] B. ['car', '35', 'bike']C. ['car', 35, 'bike'] D. ['car', '3 ', '5', 'bike']B课堂小结1.Python变量(1)变量命名:由大小写字母、数字、下划线组成,不能以数字开头,字母区分大小写,不能使用保留字。(2)变量赋值:=、+=、-=、*=、/=、%=2.Python基本数据结构:字符串、列表、字典(1)字符串、列表是有序的序列元素的引用:索引、切片基本运算:乘法(重复序列)、加法(连接序列)、关系运算、成员运算(2)字典元素是无序的,但元素中的键具有唯一性格式: d = {key1:value1 , key2:value2 ,…}元素的引用:以键为索引 展开更多...... 收起↑ 资源预览