版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章Python基础1-1Python基本操作Python语言有着简洁和清晰的特点,能够让学习着拜托复杂的语法,从而专注于问题的解决。同时,Python语言还有大量的第三方库,对数据分析和可视化帮助很大。本章将重点介绍Python的基础知识,包括Python基本操作、选择与循环结构、列表操作、字典操作、函数定义与调用等。在用计算机求解问题的过程中,常常会用符号化的方法记录客观事实,这些符号化的表示就是数据。计算中存在着数据的输入与输出,数据不同类型的转换以及数据之间的各种运算,这些都是程序设计语言的基本操作,通过这些基本操作可以实现一些简单的功能。在Python中,有些功能符号难以在输出函数直接输入,比如单引号和双引号,因为Python会把单引号和双引号里面的字符当做字符串进行处理,所以单引号和双引号仅仅是字符串输入的默认符号。如果想要输出单引号和双引号,就不能直接输入,而是要用转义符。一、变量变量主要类型:一、变量变量类型表示方法示例字符串class'str'"a"、'Python'整形数class'int'0、100浮点数class'float'5.02、10.00布尔值class'bool'True、False示例代码如下:i=100j="a"k='Python'。m=5>4一、变量【结果分析】把数值100赋值给i,把字符a赋值变量j,把字符串Python赋值给变量k,把布尔值True赋值给变量m。在Python中,有些功能符号难以在输出函数直接输入,比如单引号和双引号,因为Python会把单引号和双引号里面的字符当做字符串进行处理,所以单引号和双引号仅仅是字符串输入的默认符号。如果想要输出单引号和双引号,就不能直接输入,而是要用转义符。二、转义符转义符是指具有特定的含义的符号,不同于字符原有的意义,所以称为转义符。转义符一般用“\”开头,后面跟一个或几个符号,表示不同的含义。如\n并不会真的输出\n,而是输出一个换行符。二、转义符常用的转义符及其含义二、转义符\n换行符\t制表符Tab\\反斜杠\\'单引号'\"双引号"一般来说,程序都会有输入和输出,这样用户才能与计算机进行交互。在Python中可以使用input函数进行输入,而使用print函数进行输出。三、输出与输入1.输入函数input是Python获取输入信息的函数,运行函数后,可以获取键盘中输入信息,信息默认为字符串类型。输入函数input的一般格式为:input([提示字符串])其中,中括号中的“提示字符串”是可选项。三、输出与输入示例代码如下:name=input("Pleaseinputyourname:")三、输出与输入【结果分析】name变量就是字符型变量。在Python中,如果想要将输入的字符串类型转换为数值型,还可以通过int来实现,其一般方法为:int(input([提示字符串]))其中,int函数表示将字符串转换为整型。三、输出与输入示例代码如下:age=int(input("Pleaseinputyourage:"))三、输出与输入【结果分析】age变量就是数值型变量。2.输出函数(1)print函数print函数是Python的基本输出函数,print函数可以将指定的消息打印到屏幕上。该消息可以是字符串,也可以是任何其他对象,该对象在打印到屏幕之前会被转换为字符串。三、输出与输入print函数有着非常灵活的使用方法,input的一般格式为:print(str,[end='\n'])其中,参数str表示要输出的内容,str是可以是字符串也可以是变量。参数end表示结束符,默认为换行符(\n),即利用print进行输出默认带有换行符,如果不想以换行符结束输出,可以使用end='\t'(Tab键)、或end=''(空格)等结束输出。三、输出与输入示例代码如下:print("helloworld!")str="helloworld!"print(str)三、输出与输入三、输出与输入print还有一种输出方式,就是字符串后面再接变量。三、输出与输入示例代码如下:a=20print("age=",a)三、输出与输入2.输出函数(2)格式化输出在很多应用场景中,对输出是有严格要求的,如在某些报表统计中,需要控制小数点位数,此时就不能直接输出原始数据,而是要对数据的格式进行控制,这就是格式化输出。格式化输出除了可以控制输出的格式之外,还有一个好处就是可以只通过一个print函数输出多个变量。三、输出与输入2.输出函数在Python中,格式化输出时,需要使用%分隔字符串和输出变量,一般格式为:字符串%(输出变量1,输出变量2,…)其中,字符串有两个部分组成,一个是普通字符串,另一个是格式说明符。普通字符串可以直接输出,而格式说明符是以%开头,并且决定了输出变量的格式。三、输出与输入格式说明符的具体用法三、输出与输入格式说明符格式化结果%%%%s字符串%i或%d整数%f浮点数算术运算可以对数据进行各种算术操作,算术操作可以用一些符号来表示,这些符号被称为算术运算符,“先乘除后加减”就反映了乘除运算的优先级比加减运算高。四、算术运算符Python的算术运算符有:+(加)、-(减)、*(乘)、/(除)、//(除整)、%(求余)和**(乘方)。“/”表示除法,如:7/2,结果为3.5。“//”表示两个数相除后得到的商的整数部分,如:7//2,结果为3。“%”表示两个数相除后得到的余数,如:7%2,返回1。“**”表示乘方,如:7**2,返回49。四、算术运算符示例代码如下:print("7除以2的结果为:",7/2)print("7除以2的商的整数部分为:",7//2)print("7除以2的余数为:",7%2)print("7的平方为:",7**2)四、算术运算符四、算术运算符任务实训2-1:通过输入提示符“请输入姓名”和“请输入年龄”,利用键盘输入“王飞”和20,并将两个输入的值赋值给两个变量“name”和“age”,再利用type函数输出两个变量的类型。任务实训2-1具体代码如下:name=input("请输入姓名:")age=int(input("请输入年龄:"))print("姓名=",name)print("name变量的类型为:",type(name))print("年龄=",age)print("age变量的类型为:",type(age))任务实训2-1【结果分析】class'str'表示字符串类型,class'int'表示整型数值。任务实训2-2:导入math模块,利用输出math.pi圆周率并赋值给变量p,输出变量p的类型,再利用格式化格式化输出圆周率的2位小数和5位小数。任务实训2-2任务实训2-2具体代码如下:importmathp=math.piprint("p=",p)print("p的类型为:",type(p))print("保留2位小数的圆周率的结果=%.2f\n保留5位小数的圆周率的结果=%.5f"%(p,p))任务实训2-3:通过input函数输入一个三位数,输出这个三位数的百位、十位和个位。任务实训2-3具体代码如下:n=int(input("请输入一个三位数:"))n_g=n%10#n除以10后得到的余数就是个位n_s=n//10%10#n//10表示n除以10得到的商的整数部分,即前两位,再除以10得到的余数就是十位n_b=n//100#n除以100得到的商的整数部分就是百位print("百位数为:%i\n十位数为:%i\n个位数为:%i\n"%(n_b,n_s,n_g))任务实训2-3巩固训练:通过input函数输入一个四位数,输出这个四位数的千位、百位、十位和个位。第1章Python基础1.2Python选择结构选择结构是指通过判断某些特定条件是否满足来决定下一步的执行流程,是非常重要的控制结构。常见的选择结构包括单分支选择结构、双分支选择结构、多分支选择结构,选择结构形式灵活多变,具体使用哪一种还要取决于要实际的业务逻辑。例如输入一个整数,判断其是否为偶数,就可以使用单支选择结构来实现。又如输入学生的成绩,判断其是及格还是不及格,就可以使用双分支选择结构。再如输入学生的成绩,判断成绩等地情况是优秀、良好、及格还是不及格,就可以使用多分支选择结构。一、关系运算符选择结构中一个重要环节是需要判断某一个条件是否成立,这就需要用到关系表达式。在Python中,关系运算符常用于两个量的比较判断,而由关系运算符连接起来的式子就是关系表达式,关系表达式的结果为布尔值,即True或False。一、关系运算符Python的关系运算符及其含义关系运算符含义<
小于<=小于等于>
大于>=大于等于示例代码如下:i,j,k=1,2,3print("%d>%d的结果为:%s"%(i,j,i>j))print("%d+%d=%d的结果为:%s"%(i,j,k,i+j==k))print("%d+%d!=%d的结果为:%s"%(i,k,j,i+k!=j))一、关系运算符一、关系运算符二、单分支选择结构单分支选择结构是选择结构中最简单一种形式,即如果满足条件的情况下就执行语句块,至于不满足条件情况无需处理。单分支选择结构的一般格式是:if表达式:
语句块二、单分支选择结构单分支选择结构的执行过程:如果关系表达式的布尔值为True,则执行语句块,然后再执行后续语句。如果关系表达式的布尔值为False,则跳过单分支选择结构,直接执行后续语句。二、单分支选择结构单分支选择结构的注意点:(1)在if语句的表达式后面必须加冒号。(2)if语句中的语句块必须向右缩进,语句块可以是单行语句,也可以是多行语句,并且语句块中的语句必须上下对齐。二、单分支选择结构示例代码如下:n=int(input("请输入一个数:"))ifn%2==0:print("%d是偶数"%n)二、单分支选择结构三、双分支选择结构双分支选择结构的一般格式是:if表达式:
语句块1else:
语句块2三、双分支选择结构双分支选择结构的执行过程:如果关系表达式的布尔值为True,则执行语句块1,否则就执行语句块2,语句块1或语句块2执行完成后,再执行后续语句。四、多分支选择结构多分支选择结构是选择结构中最为复杂的一种形式,多分支选择结构的一般格式是:if表达式1:
语句块1elif
表达式2:语句块2……elif
表达式m:语句块melse:语句块n任务实训2-4:通过input函数输入两个整数2和3,并赋值给变量a和b,利用单分支选择结构,先输出较大数,再输出较小数。任务实训2-4具体代码如下:a=int(input("请输入a="))b=int(input("请输入b="))ifa<b:
a,b=b,aprint("大数=%d\n小数=%d"%(a,b))【分析】如果a>b,即a是大数,b是小数,则不会执行单分支选择结构,直接输出。如果a<b,即a是小数,b是大数,则会执行单分支选择结构,交换a和b的值,再输出结果,也可以保证a是大数,b是小数。任务实训2-4任务实训2-5:导入random模块,利用输出randon.randint(0,100)随机生成一个0到100的整数,并赋值给number,如果number大于等于60,返回“pass”,否则返回“notpass”。任务实训2具体代码如下:importrandomnumber=random.randint(0,100)print("随机生成的数=",number)ifnumber>=60: print("pass")else: print("notpass")任务实训2-5任务实训2-6:导入random模块,利用输出randon.randint(0,100)随机生成一个0到100整数,并赋值给number,根据number进行分类,大于等于85为“优秀”,70~84为“良好”,60~69为“及格”,60以下为“不及格”。任务实训2-6具体代码如下:importrandomnumber=random.randint(0,100)print("随机生成的数=",number)ifnumber>=85:print("结果为:优秀")elifnumber>=70:#或elifnumber>=70andnumber<85:print("结果为:良好")elifnumber>=60:#或elifnumber>=60andnumber<70:print("结果为:及格")else:print("结果为:不及格")任务实训3巩固训练:某市出租车的收费标准是:3公里以下,收起步费10元,超过3公里不超过10公里(远程标准),每公里2.1元,超过10公里,每公里3.2元,若行程为11.5公里,则收费是多少元?(收费结果保留小数点1位)。第1章Python基础1.3Python循环语句在求解问题时,有时会出现很多重复性操作,在程序运行中就会反复执行这些重复语句,这会极大影响计算机运行效率。在某些特定条件下重复执行某些操作的控制结构就是循环结构,循环结构通常由循环条件和循环体组成,循环是程序设计的一种重要的方法。Python提供了while和for两种语句来实现循环结构。一、while循环语句while循环结构是通过判断循环条件是否满足来决定是否执行循环语句块的一种循环结构,特点是先判断循环条件,再决定是否执行循环语句块。一、while循环语句while循环语句的一般格式是:while表达式:
语句块while循环语句中的表达式为循环条件,循环条件可以是一个关系表达式,其结果为True或False。如果是True,则执行语句块。一、while循环语句while循环语句一般需要注意三点:(1)循环变量设初始赋值,如i=0。(2)关系表达式应包含循环变量,并且其结果为一个布尔值,如i<10。(3)语句块中一般需要包含循环变量自加过程,如i=i+1。二、for循环语句一般形式for循环语句的一般格式是:for目标变量in序列对象:
语句块二、for循环语句一般形式for循环语句首先需要定义序列对象,然后将序列对象的每个元素赋给目标变量,对每一次赋值都执行一遍循环体语句。当序列被遍历完毕之后,循环则停止。二、for循环语句一般形式利用字符串、列表、元组、range函数等都可以生成序列对象。列表和元组都是Python重要的数据结构,列表的操作会在后续的内容中作详细地介绍。二、for循环语句一般形式这里,只需了解列表和元组的简单用法,列表的表示方法是[元素1,元素2,……],元组的表示方法是(元素1,元素2,……)。同时,还可以利用zip函数生成多变量的序列对象。二、for循环语句一般形式1.利用字符串、列表、元组生成序列对象(1)利用字符串生成序列对象示例代码如下:str="Python"foriinstr:print(i,end='\t')二、for循环语句一般形式1.利用字符串、列表、元组生成序列对象(1)利用字符串生成序列对象二、for循环语句一般形式1.利用字符串、列表、元组生成序列对象(2)利用列表生成序列对象示例代码如下:products=["手机","电视机","笔记本电脑"]foriinproducts:print("产品名称为:",i)二、for循环语句一般形式1.利用字符串、列表、元组生成序列对象(2)利用列表生成序列对象二、for循环语句一般形式2.利用range函数生成序列对象在Python中,range函数返回的是可迭代的连续数字序列,range函数的一般格式为:range(start,stop,step)其中,start表示初始值,stop表示终止值,并且终止值是不能取到的,step表示步长。二、for循环语句一般形式2.利用range函数生成序列对象range(n)表示从0开始,n-1结束的可迭代的数字序列012……n-1,如range(5)表示就是序列01234。如果不希望从0开始,也可以加入初始值,如range(1,10)表示123……9,同时还可以在range函数中要加入步长,如range(1,10,2)表示13579。二、for循环语句一般形式2.利用range函数生成序列对象示例代码如下:print("输出0到9的整数:",end='')foriinrange(10):print(i,end='')print()print("输出2到9的整数:",end='')forjinrange(2,10):print(j,end='')print()print("输出3到9中的奇数:",end='')forkinrange(3,10,2):print(k,end='')二、for循环语句一般形式2.利用range函数生成序列对象二、for循环语句一般形式3.利用zip函数生成多变量的序列对象for循环语句除了可以实现单个变量的循环以外,还可在一些特殊情况下,实现多个变量的for循环。利用zip函数就可以实现多个变量的for循环,zip函数是通过并行遍历的工作方式来进行的。二、for循环语句一般形式3.利用zip函数生成多变量的序列对象示例代码如下:fori,jinzip(['a','b','c'],[1,2,3]):print("%s=%d"%(i,j))【结果分析】变量i分别赋值“a”、“b”、“c”,变量j分别赋值1、2、3,第1次循环时,可以输出a=1的效果,后面的输出效果以此类推。二、for循环语句一般形式3.利用zip函数生成多变量的序列对象任务实训2-7:某一商品初始价格为10元,假设每次打折均打95折,计算打折几次后,价格会低于7元。通过while循环,输出每一次打折后价格。其中,商品价格设变量为price,打折次数可设变量为count。任务实训2-7具体代码如下:price=10count=0print("初始价格为:%.2f元"%price)whileprice>7:price=price*0.95count=count+1print("第%i次打完95折后的价格为:%.2f元"%(count,price))任务实训2-7任务实训2-8:将20以内的3的倍数都替换成*。具体代码如下:foriinrange(1,21):ifi%3==0:
i="*"print(i,end='\t')任务实训2-8任务实训2-9:利用双层嵌套for循环,生成5行10列的由符号*组成的矩形图形。具体代码如下:foriinrange(1,6):forjinrange(1,11):print("*",end='')print()任务实训2-9任务实训2-9:利用双层嵌套for循环,生成5行10列的由符号*组成的矩形图形。【结果分析】在执行双层嵌套for循环时,第1步:变量i赋值为1,接着变量j会把所有的取值遍历一遍,即j=1,2,……,10,此时输出1行10列的“*”。为了让一行输出完毕之后,产生换行效果,需要在第一层for循环内加上print函数,其效果是一行结束后,产生一个换行符。第2步:变量i赋值为2,接着变量j会把所有的取值再遍历一遍,此时会输出2行10列的“*”,后面的循环以此类推。因此,可以把变量i的取值看成是行号,而把变量j的取值看成是列号。任务实训2-10:某店铺有3个热销商品类别,分别是手机、电视机、笔记本电脑,这三个商品类别的商品编号分别为002、004、007,其销量分别为1000、2000、1500,通过for循环结果和zip函数输出结果。任务实训2-10具体代码如下:code=['002','004','007']products=["手机","电视机","笔记本电脑"]sales=[1000,2000,1500]fori,j,kinzip(code,products,sales):print("商品编号为:%s,商品名称为:%s,销量为:%d"%(i,j,k))任务实训2-10巩固训练:利用双层嵌套for循环,输出九九乘法表。第1章Python基础1.4Python列表操作Python的列表与元组属于序列类型,其每个元素都是按照位置编号来读取的,这一点与数组类似,但是数组只能存储相同类型的元素,而列表和元组可以存储不同类型的元素。列表与元组在很多方面的操作是类似的,但是两者也有不同,列表的元素是可变的,而元组的元素是不可变的。一、创建列表创建列表时,只要逗号对元素进行分隔,再使用方括号括起来即可,列表的元素不需要具有相同的类型,如[1,2,3]、['a','b','c']或[1,2,'a']都是列表。一、创建列表示例代码如下:list1=[1,2,3,4,5]list2=['a','b','c']list3=[1,2,'a','b']print("数字列表为:",list1)print("字符串列表:",list2)print("混合列表为:",list3)一、创建列表二、访问列表元素与切片列表1.访问列表元素列表的每一个元素都对应一个位置编号,这个位置编号被称为列表索引index。访问列表元素可以通过列表索引来实现,列表索引是以0开头的,即第1个元素的索引是0,而不是1。二、访问列表元素与切片列表1.访问列表元素除了常见的正向索引以外,列表索引还支持反向索引,即可以从列表的最后一个元素开始访问,最后一个元素的索引为-1,倒数第2个元素的索引为-2,以此类推。二、访问列表元素与切片列表1.访问列表元素列表索引的访问一般格式为:list[index]二、访问列表元素与切片列表1.访问列表元素示例代码如下:list=['a','b','c','d','e','f']print("列表为:",list)index=2print("索引为%d的元素为:%s"%(index,list[index]))index=-1print("索引为%d的元素为:%s"%(index,list[index]))二、访问列表元素与切片列表1.访问列表元素二、访问列表元素与切片列表2.访问切片列表切片列表是指取出列表一段连续或不连续元素构成一个新列表,切片列表的一般格式为:list[start:last:step]其中,start表示起始索引,start可以省略,默认是0。last表示终止索引,并且这个终止索引是不能取到的。step表示索引步长,即索引之间的间隔。二、访问列表元素与切片列表2.访问切片列表(1)start:last是一个左闭右开的区间,如list[1:4]表示的是输出列表索引号1到3对应的元素。(2)有时使用默认索引更加方便,如list[:3]表示输出列表索引号0到2对应的元素,list[::2]表示将列表list按间隔为2正序输出,list[::-1]表示将列表list按间隔1倒序输出。二、访问列表元素与切片列表示例代码如下:list=['a','b','c','d','e','f']print("列表为:",list)print("索引号1到3的切片列表为:",list[1:4])print("索引号0到2的的切片列表为:",list[:3])print("索引号2到最后一个索引的切片列表为:",list[2:])print("原列表索引0到4,步长为2的切片列表为:",list[0:5:2])print("按间隔为2正序输出的切片列表为:",list[::2])print("按间隔为1倒序输出的切片列表为:",list[::-1])二、访问列表元素与切片列表三、添加列表元素在列表中可以使用append方法在列表的最后一个元素后面再添加一个新元素。添加列表新元素的一般格式为:list.append(value)其中,value表示新添加元素的值。三、添加列表元素示例代码如下:list=[1,2,3,4]print("初始列表为:",list)list.append(5)print("添加新元素的列表为:",list)三、添加列表元素通过append方法,还可以使用一个空列表[]通过逐一添加的方式生成一个用户需要的新列表。四、修改列表元素使用元素索引针对某个指定的元素进行修改,从而达到修改列表的目的。修改列表元素一般格式为:list[index]=value_new其中,value_new表示将列表list中索引index对应的元素的新值。四、修改列表元素示例代码如下:list=['a','b','c','d','e','f']print("列表为:",list)list[2]='g'print("索引为2的元素修改为g后的新列表为:",list)四、修改列表元素五、删除列表元素从列表中删除元素十分方便,既可以按照索引号删除元素,也可以按照内容删除元素。五、删除列表元素1.按索引删除列表元素按索引删除列表元素的一般格式为:dellist[index]其中,index表示要删除元素的索引。五、删除列表元素2.按值删除列表元素按值删除列表元素的一般格式为:list.remove(value)其中,value表示要删除元素的值。五、删除列表元素2.按值删除列表元素示例代码如下:list=['a','b','c','d','e','f']print("列表为:",list)dellist[1]print("删除索引为1的元素后的新列表为:",list)list.remove('a')print("删除元素值为a的新列表为:",list)五、删除列表元素2.按值删除列表元素六、列表的常用方法Python提供了列表的很多方法,包括查询列表长度、检查列表元素等。六、列表的常用方法1.查询列表长度在Python中,可以利用len查询列表长度。len的一般格式为:len(list)六、列表的常用方法1.查询列表长度示例代码如下:list=['a','b','c','d','e','f']print("列表为:",list)print("列表的长度为:",len(list))六、列表的常用方法1.查询列表长度六、列表的常用方法2.检查列表元素在Python中,可以利用in检查指定元素是否存在于列表中,in方法的一般格式为:valueinlist其中,如果value在list中,则返回True,如果value不在list中,则返回False。六、列表的常用方法2.检查列表元素示例代码如下:name_list=["张杨","徐天","王飞","李明","潘悦"]print("客户名单为:",name_list)n=len(name_list)foriinrange(n):print("第%d个客户为:%s"%(i+1,name_li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某公司新产品发布会议流程概述
- 守望相助邻里相亲第一框我们需要怎样的邻里关系(B)(教学设计)
- 2026年边境防控测试题及答案
- 2026年县人社局劳动监察大队案件审理员竞聘面试题库附答案
- 2026年保育员考试试卷及答案
- 2026年口腔内科学试题(附参考答案)
- 2026年卫生法律试题及答案
- 2026年《植物生理学》期末考试复习题库附答案
- 2026年金融机构对公账户管理与服务知识测试题及答案
- 2026年成人高考专升本政治试题及答案
- 2025东源事业单位笔试真题
- 租赁仪器合同协议
- 成人原发性腹壁疝腹腔镜手术中国专家共识(2025版)解读课件
- 音标学习(课件)小学英语
- 高校专业教材数字化创新改革
- 2024-2025学年河南省“金太阳联考”高一年级上学期期中考试数学试题(含答案)
- 广西电力行业职工职业技能大赛(电力交易员赛项)备赛试题库(浓缩500题)
- 2024年新北师大版八年级上册物理全册教学课件(新版教材)
- 2023年基因检测项目评估报告
- 87种隐蔽验收记录填写方法
- 《建筑基坑工程监测技术标准》(50497-2019)
评论
0/150
提交评论