Python数据分析与可视化 教案 电子 第2章 Python基础_第1页
Python数据分析与可视化 教案 电子 第2章 Python基础_第2页
Python数据分析与可视化 教案 电子 第2章 Python基础_第3页
Python数据分析与可视化 教案 电子 第2章 Python基础_第4页
Python数据分析与可视化 教案 电子 第2章 Python基础_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

课题2.1Python基本操作课型讲练

授课班级大数据授课时数2

1.了解变量的含义。

2.理解各种转义符的作用。

教学目标

3.掌握格式化输出的作用。

4.理解各种运算符的作用。

1.理解各种转义符的作用。

教学重点

2.掌握格式化输出的作用。

教学难点1.了解格式化输出中,%的使用方法。

本次课是Python复习的第一课,选取了Python中最基本的部分,也是

学情分析

在数据分析中经常用到的一些方法。

在用计算机求解问题的过程中,常常会用符号化的方法记录客观事实,这些符号

化的表示就是数据。计算中存在着数据的输入与输出,数据不同类型的转换以及数据

之间的各种运算,这些都是程序设计语言的基本操作,通过这些基本操作可以实现•

些简单的功能。

一、变量

变量是计算机语言中能储存计算结果或能表示值的抽象概念,一般而言,变量需

要先定义后使用。例如C语言中的变量,必须在使用前确定变量的数据类型,但在

Python却有所不同,它是一种动态语言,对变最的每一次赋值,都可以改变变量的类

型。需要注意的是,输入字符申的时候,般要宇符申加上单引号或双引号。

变量主要类型如下表所示:

表2-*变量类型表

变量类型表示方法示例

字符串class'str'"a"、'Python'

整形数class'int'0、100

浮点数class,float'5.02、10.00

布尔值class'bool'True、False

示例代码如下:

i=100

j="a"

k='Python'o

m=5>4

【结果分析】把数值100赋值给i,把字符a赋值变量j,把字符串Python赋值

给变量k,把布尔值True赋值给变量明

二、转义符

在Python中,有些功能符号难以在输出函数直接输入,比如单引号和双引号,

因为Python会把单引号和双引号里面的字符当做字符串进行处理,所以单引号和双

引号仅仅是字符串输入的默认符号。如果想要输出单引号和双引号,就不能直接输入,

而是要用转义符。

转义符是指具有特定的含义的符号,不同于字符原有的意义,所以称为转义符。

转义符一般用“\”开头,后面跟一个或几个符号,表示不同的含义。如\n并不会真

的输出\n,而是输出一个换行符。常用的转义符及其含义如表表2-*所示。

表2"转义符表

\n换行符

\t制表符Tab

\\反斜杠\

\'单引号,

双引号”

三、输出与输入

一般来说,程序都会有输入和输出,这样用户才能与计算机进行交互。在Pyihon

中可以使用input函数进行输入,而使用print函数进行输出。

1.输入函数

inpul是Python获取输入信息的函数,运行函数后,可以获取键盘中输入信息,

信息默认为字符串类型。

输入函数input的一般格式为:

input([提本字符串])

其中,中括号中的“提示字符串”是可选项。

示例代码如下:

name=input(,,Pleaseinputyourname:")

【结果分析】name变量就是字符型变量。

在Pylhon中,如果想要将输入的字符申类型转换为整数型,还可以通过ini来实

现,其一般格式为:

int(inputU提示字符串]))

其中,int函数表示将字符串转换为整型。示例代码如下:

age=int(input("Pleaseinputyourage:1'))

【结果分析】age变量就是数值型变量。

2.输出函数

(1)print函数

print函数是Python的基本输出函数,print函数可以将指定的消息打印到屏幕上。

该消息可以是字符串,也可以是任何其他对象,该对象在打印到屏幕之前会被转换为

字符串。

print函数有着非常灵活的使用方法,input的一般格式为:

print(str,[end='\n'J)

其中,参数str表示要输出的内容,str是可以是字符串也可以是变量。参数end

表示结束符,默认为换行符(W),即利用print进行输出就认带有换行符,如果不想

以换行符结束输出,可以使用end廿T(Tab键)、或end=~(空格)等结束输出。

示例代码如下:

print("helloworld!")

str="helloworld!"

print(str)

代码与结果如图2-*所示。

Ye“drBMxtaxRunlook馆岫ukxaBHp1py•,(Zrm

[Pvo^rct▼。W。一021仍

旅print<-Miloworld!-)

修216stf-Mlloworldf

■ExlmiUbdprint(»tr)

、Sc,《kgid

M

helloworW!

helloworldl

♦COTMW—A・$TOGOIS

4:1UU843c、

图2-*prim输出函数示例结果

Prim还有一种输出方式,就是字符串后面再接变量,示例代码如下:

a=20

print("age=M,a)

输出结果为:

Run2-1

>C:\Users\l11idn^\Aaa«x>da3\python.exeC:/Users/lilidn^/PycKarwProject$/sjfx/2-l.py

•2KProcessfinishedwithexit<ode©

,

图2・*print输出函数示例结果

(2)格式化输出

在很多应用场景中,对输出是有严格要求的,如在某些报表统计中,需要控制小

数点位数,此时就不能直接输出原始数据,而是要对数据的格式进行控制,这就是格

式化输出。格式化输出除了可以控制输出的格式之外,还有一个好处就是可以只通过

一个print函数在一个字符串内输出多个变量。

在Pyihon中,格式化输出时,需要使用%分隔字符串利输出变量,一般格式为:

字符串%(输出变量1,输出变量2,…)

其中,字符串有两个部分组成,一个是普通字符串,另一个是格式说明符。普通

字符串可以直接输出,而格式说明符是以%开头,并且决定了输出变量的格式。

格式说明符的具体用法如表2-*所示。

表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”除以2的余数为:\7%2)

print("7的平方为:”,7**2)

输出结果如图2-*所示。

Run:2-1

>C:\User$\liliar^\Anaconda3\pytbon.exeC:/Users/liliaog/Pychar^Projects/sjfx/2-l.py

7除以2的姑累力:3.5

7除以2的育的整放部分为:3

==57除以2的余数为:1

U7的平方力:49

X

Processfinishedwithexitcode0

图2-*算术运算符应用结果

任务实训

任务1:通过输入提示符“请输入姓名”和“请输入年龄”,利用键盘输入“王

飞”和20,并将两个输入的值赋值给两个变量“name”和“age”,再利用type函数

输出两个变量的类型。具体代码如下:

name=input("请输入姓名:”)

age=int(input("请输入年龄:"))

print。'姓名=",name)

print("name变量的类型为:",type(name))

print("年龄=二age)

print("age变量的类型为:",type(age))

输出结果如图2-*所示。

Gl£«eEditMewCodeRrUctocMlochVCSWEowbdp0八-\2l.pyPyClwrm

s/v-2-1py

s内加一

£w

--(•事・入内畲:e>

£Wa中-gtCyyL•・入•))

■I>i>Exirtfvalfrlnt(aMS•

—So4rtd3dComolK■的乂基力:*.typeST)》

FlntCWtl--,<•)

■第量置*a>tyi>e<«ce)>

224

»:C!\U$«rs\llllM<\AMCOO«4)\p)rtbon.eMel.pyr

J"入na:

谒■入年•:M

.rpM6-it

3货力:“UtQ'”、

“彳••冷

Jg*■初:量力:«Ust,UfM

t

E>cenfUlsMwitheKitcode0

»a4IOOOaTwrrwul♦fyrentornote________________________________QH109

KtlCWUW-S4«PMAPython口、F

图2-*任务1代码及输出结果

【结果分析】class'str'表示字符串类型,class'int'表示整型数值。

任务2:导入math模块,利用输出math.pi圆周率并赋值给变量p,输出变量p

的类型,再利用格式化格式化输出圆周率的2位小数和5位小数。具体代码如下:

importmath

p=math.pi

print("p=",p)

print("p的类型为:",type(p))

print("保留2位小数的圆周率的结果=%.2&保留5位小数的圆周率的结果

=%.5f'%(p,p))

输出结果如图2-*所示。

Run:睢2・1

>、C:\UMrs\liliang\Afdconda3\python.exeC:/U5ers/lilidng/Pych^rrf,rojects/5jfx/2-l.py

p-J・MIS92653s器793

p的曼国力:«U$s*floaf>

»5保留2位小数的圆肘率的精果-3.M

'zl保留5位小散的国博率的tS!T=3.14159

*

Processfinishedwithexitcode0

图2-*格式化输出示例结果

任务3:通过input函数输入一个三位数,输出这个三位数的百位、十位和个位。

具体代码如下:

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-*所示。

Run:2-1

>C:\Users\liliang\Anaconda3\python.exeC:/User$/liliang/PychaniProjects/sjfx/2-l.py

演愉入一个三位数二245

百位数为:2

■■m十位成为:4

U个位数为:5

■Processfinishedwithexitcode0

►4:RunfcTODOHTenninal♦PythonConsole

图2-*任务3输出结果

课题2.2Python选择结构课型讲练

授课班级大数据授课时数2

1.了解关系运算符的作用。

2.了解选择结构的原理。

教学目标3.理解单分支选择结构的用法。

4.理解双分支选择结构的用法。

5.理解多分支选择结构的用法。

教学重点1.了解选择结构的原理

教学难点1.理解多分支选择结构的用法。

选择结构是Python中一种重要的结构,在数据分析中常常会使用,学

学情分析

好选择结构有利于后面的内容的学习。

选择结构是指通过判断某些特定条件是否满足来决定下一步的执行流程,是非常

重要的控制结构。常见的选择结构包括单分支选择结构、双分支选择结构、多分支选

择结构,选择结构形式灵活多变,具体使用哪•种还要取决于要实际的业务逻辑。

例如输入一个整数,判断其是否为偶数,就可以使用单支选择结构来实现。又如

输入学生的成绩,判断其是及格还是不及格,就可以使用双分支选择结构。再如输入

学生的成绩,判断成绩等地情况是优秀、良好、及格还是不及格,就可以使用多分支

选择结构。

一、关系运算符

选择结构中个重要环节是需要判断某个条件是否成立,这就需要用到关系表

达式。在Python中,关系运算符常用于两个量的比较判断,而由关系运算符连接起

来的式子就是关系表达式,关系表达式的结果为布尔值,即True或False。

Python的关系运算符及其含义如表2-*所示。

表2-*关系运算符及其含义

关系运算符含义

<小于

<=小于等于

>大于

>=大于等于

==判断是否等于

!=判断是否不等于

示例代码如下:

i,j,k=1,2,3

print("%d>%d的结果为:%s"%(ij,i>j))

print("%d+%d=%d的结果为:%s,,%(i,j,k,i+j==k))

print("%d+%d!=%d的结果为:%s"%(i,k,j,i+k!=j))

输出结果如图2-*所示。

RUN22

>(:\U$ers\li1iang\Anacondd3\python.exeC:/Users/1i1iang/PychamProjects/$jfx/2-2.py

的婚果为:False

的结果力:True

■>己l+3!=2的结果力:True

Ei

».ProcessfinishedwithexitcodeO

图2-*关系运算符输出结果

二、单分支选择结构

单分支选择结构是选择结构中最简单的一种形式,即如果满足条件的情况下就执

行语句块,至于不满足条件的情况无需处理。单分支选择结构的一般格式是:

if表达式:

语句块

单分支选择结构的执行过程:如果关系表达式的布尔值为True,则执行语句块,

然后再执行后续语句。如果关系表达式的布尔值为False,则跳过单分支选择结构,

直接执行后续语句。

单分支选择结构的注意点:

(1)在if语句的表达式后面必须加冒号。

(2)if语句中的语句块必须向右缩进,语句块可以是单行语句,也可以是多行

语句,并且语句块中的语句必须上下对齐。

示例代码如下:

n=int(input("请输入一个数:"))

ifn%2==0:

piint("%d是偶数"%n)

输出结果如图2-*所示。

Run:2-2

>C:\Users\li1iang\Andconda3\pytbon.exeC:/Users/liliang/PychariiProjects/sjfx/2-2.py

诺检入一个数:22

"22=保故

二三

:,Processfinishedwithexitcode0

图2-*单分支选择结构输出结果

三、双分支选择结构

双分支选择结构的一般格式是:

if表达式:

语句块1

else:

语句块2

双分支选择结构的执行过程:如果关系表达式的布尔值为True,则执行语句块1,

否则就执行语句块2,语句块I或语句块2执行完成后,再执行后续语句。

四、多分支选择结构

多分支选择结构是选择结构中最为复杂的一-种形式,多分支选择结构的一般格式

是:

if表达式1:

语句块1

elif表达式2:

语句块2

elif表达式m:

语句块m

else:

语句块n

任务实训

任务1:通过mput函数输入两个整数2和3,并赋值给变量a和b,利用单分支

选择结构,先输出较大数,再输出较小数。具体代码如下:

a=inKinpuK"请输入a='))

b=int(input("请输入b=<*))

ifa<b:

a,b=b,a

print("大数=%d\n小数=%d"%(a,b))

【结果分析】如果a>b,即a是大数,b是小数,则不会执行单分支选择结构,

直接输出。如果a<b,即a是小数,b是大数,则会执行单分支选择结构,交换a和

b的值,再输出结果,也可以保证a是大数,b是小数。

输出结果如图2、所示。

Run22

>C:\U*«rs\li1ijng\AnacondaJ\python.«xoC:/Us«rs/Hlidr^/PychdrwProjccts/sjfx/2-2.py

f入・・2

♦■入33

心r5xn•3

*小ar•z

Processfinishedwithexitcode0

图2-*任务1输出结果

任务2:导入random模块,利用输出randon.randint(0,100)随机生成•个0至IJ100

的整数,并赋值给number,如果number大F等于60,返回“pass”,否则返回“notpass”。

具体代码如下:

importrandom

number=random.randint(0,100)

print("随机生成的数=",number)

ifnumber>=60:

prinlC'pass")

else:

print("notpass")

输出结果如图2-*所示。

Run:2-2

>▲C:\Uyer$\liliang\Anaconda3\python.exeC:/U$€rs/llllang/Pychar«#>rojects/sjfx/2-2.py

能机支成的数-31

notpass

二5

口Proccsfinishedwithoxitcod。0

图2-*任务2输出结果

任务3:导入random模块,利用输出randon.randint(0,100)随机生成一个。至IJ100

整数,并赋值给number,根据number进行分类,大于等于85为“优秀”,7()〜84

为“良好”,60〜69为“及格”,60以下为“不及格”。具体代码如下:

importrandom

number=random.randintJO,100)

print("随机生成的数=",number)

ifnumber>=85:

prinl("结果为:优秀”)

elifnumber>=70:#或elifnumber>=70andnumber<85:

print("结果为:良好”)

elifnumbcr>=60:#或elifnumbcr>=60andnumbcr<70:

prinl("结果为:及格”)

else:

print("结果为:不及格”)

输出结果如图2-*所示。

Run;2-1

A1;C:\Users\liliang\Anaconda3\python.exeC:/Users/liliang/PychannProjects/sjfx/2-l.py

陵机生戌的数=82

犍果为:Rft

*己

Processfinishedwithexitcode0

»一

图2-*任务3代码及输出结果

课题2.3Python循环语句课型讲练

授课班级大数据授课时数2

1.了解循环结构的原理。

教学目标2.能够使用while循环语句。

3.能够使用for循环语句。

教学重点1.了解循环结构的原理。

1.能够使用while循环语句。

教学难点

2.能够使用for循环语句。

循环语句非常考验学生的抽象归纳能力,对于学生还是有比较高的要求

学情分析

的,因此在讲解时,可以通过一些简单的案例进行引入。

在求解问题时,有时会匕现很多重复性操作,因此在程序运行中就会反复执行这

些重复语句,这会极大影响计算机的运行效率。在某些特定条件下重复执行某些操作

的控制结构就是循环结构,循环结构通常由循环条件和循故体组成,循环是程序设计

的一种重要的方法。

Python提供了while和for两种语句来实现循环结构。

一、while循环语句

while循环结构是通过判断循环条件是否满足来决定是否执行循环语句块的一种

循环结构,特点是先判断循环条件,再决定是否执行循环语句块。

while循环语句的般格式是:

while表达式:

语句块

while循环语句中的表达式为循环条件,循环条件可以是一个关系表达式,其结

果为True或False。如果是True,则执行语句块。

while循环语句一般需要注意三点:

(1)循环变量设初始赋值,如i=0o

(2)关系表达式应包含循环变量,并且其结果为一个布尔值,如i<100

(3)语句块中一般需要包含循环变量自加过程,如1与+1。

二、foi•循环语句一般形式

for循环语句的一般格式是:

for目标变量in序列对象:

语句块

for循环语句首先需要定义序列对象,然后将序列对象的每个元素赋给目标变量,

对每•次赋值都执行•遍循环体语句。当序列被遍历完毕之后,循环则停止。

利用字符串、列表、元组、range函数等都可以生成序列对象。列表和元组都是

Pylhon重要的数据结构,列表的操作会在后续的内容中作详细地介绍。这里,只需了

解列表和元组的简单用法,列表的表示方法是【元素L元素2,……],元组的表示方法

是(元素1,元素2,……)。同时,还可以利用zip函数生成多变量的序列对象。

1.利用字符串、列表、元组生成序列对象

(1)利用字符串生成序列对象

示例代码如下:

str="Python"

foriinstr:

prinl(i,end='\t,)

输出结果如图2-*所示。

Run:2-3

AC:\User$\111iang\Anaconda3\pytbon.excC:/Users/111iang/PycharnProJKt$/$jfx/2-3.py

python

Processfinishedwithexitcode0

asa

.

图2-*利用字符串生成序列对象

(2)利用列表生成序列对象

示例代码如下:

products=「手机”,“电视机“,”笔记本电脑]

foriinproducts:

print("产品名称为:”,i)

输出结果如图2・*所示。

Run:2-3

»C:\Uscrs\liliong\Anooruin3\python.exeC:/Uscr5/liliang/Pychanw>rojccts/5jfx/23.py

产品名称为:手机

产品名称为:电视机

>>5产品名称为:衰记本电m

:■

».Processfinishedwithexitcode0

图2-*利用列表生成序列对象示例结果

(3)利用元组生成序列对象

示例代码如下:

sales=(1000,2000,1500)

foriinsales:

print(”产品销量为:”,i)

输出结果如图2-*所示。

Run:2-3

AC:\Users\liliang\Anacorda3\python.exeC:/Users/liliang/Pychar«Projects/sjfx/2-3.py

产品ffi・力:1(K»

产品销■力:2000

sm产品忸・为:iso©

»_Processfinishedwithexitcode0

图2-*利用元组生成序列对象示例结果

2.利用range函数生成序列对象

在Python中,range函数返回的是可迭代的连续数字序列,range函数的一般格

式为:

rangc(start,stop,stcp)

其中,slarl表示初始值,stop表示终止值,并且终止值是不能取到的,si叩表示

步长。

rangc(n)表示从0开始,n-1结束的可迭代的数字序列0,1,2,,n-1,如range(5)

表示就是序列0,123,4。如果不希望从0开始,也可以加入初始值,如range。,10)表

示1,2,3,.....»9,同时还可以在range函数中要加入步长,如range。,10,2)表示

135,7,9。

示例代码如下:

print("输出0到9的整数:”.end*

foriinrange(lO):

print(i,end=,')

print()

prinl("输出2到9的整数:",end=")

forjinrange(2,10):

print(j,end=,')

print()

print("输出3到9中的奇数:*nd-”)

forkinrange(3,10,2):

print(k,end='')

输出结果如图2-*所示。

Run:2-3

>个C:\Users\liliang\Anaconda3\pytbon.exeC:/Qsers/liliang/Pychar«Projects/sjfx/2-3.py

金出0到9的整融:01234S6789

除出2到9的整数:23456789

••三・出3到9中的奇数:3579

Proceisfinishedwithexitcode0

图2-*range函数示例结果

3.利用zip函数生成多变量的序列对象

for循环语句除了可以实现单个变量的循环以外,还可在一些特殊情况下,实现

多个变量的for循环。利用zip函数就可以实现多个变量的for循环,zip函数是通过

并行遍历的工作方式来进行的。

示例代码如下:

fori,jinzip(ra?b','c'M123]):

printers=%d"%(ij))

【结果分析】变量i分别赋值"a”、"b”、“c”,变量j分别赋值1、2、3,第1

次循环时,可以输出a=1的效果,后面的输出效果以此类推。

输出结果如图2-*所示。

Run:2-3

ACT\Ui4>r4\liliong\2Uijicondd3\pythonoxoC?/Uiori/liliong/Py<h3r«Projo<t4/sj^x/2-3.py

a-1

b-2

■■力c■3

“_Processfinishedwithexitcode0

图2-*zip函数示例结果

任务实训

任务1:某一商品的初始价格为10元,假设每次打折均打95折,计算打折几次

后,价格会低于7元。通过while循环,输出每一次打折后的价格。其中,商品价格

可设变量为price,打折次数可设变量为count。具体代码如下:

price=10

count=0

p「inl("初始价格为:%2.元"%p「ice)

whileprice>7:

price=price*0.95

count=count+1

print("第%i次打完95折后的价格为:%.2f元"%(counl,price))

输出结果如图2-*所示。

Run:02-3

A初始价格为:10.。。元

第1次打完95折后的价格为:9.50元

_济2次打完95折后的价格为:9.03元

S:己第3次打完9s折后的价格为:8.57元

=1第4次打完95折后的价格为:8.15元

»他第5次打完95折后的价格为:7.74元

_第6次打完95折后的价格为:7.3S元

・第7次打浣95折后的价格为:6.98元

Processfinishedwithexitcode0

图2-*任务1输出结果

任务2:将20以内的3的倍数都替换成*。具体代码如下:

foriinrange(1,21):

ifi%3==0:

i=

print(i,end='\t')

输出结果如图2-*所示。

Run:02・3

>C:\Usurs\l£1iang\Anaconda3Wython.exeC:/Users/11lUng/PychaniProject4/sjf>/2«3.py

12,45•78•1G11•14•1617•1920

Processfinishedwithexitcode0

£2万

图2-*任务2输出结果

任务3:利用双层嵌套for循环,生成5行10列的由符号水组成的矩形图形。具

体代码如下:

foriinrange(1,6):

forjinrange(1,11):

print。'*",end=()

print()

输出结果如图2-*所示。

Run:♦23x

AC:\Users\liliang\Anaconda3\pytbon.exeC:/U$er$/liliang/PychariiProjects/sjfx/2-3.py

二;......................

Hi»•••••••••

x—…■

・Processfinishedwithexitcode0

图2-*任务3输出结果

【结果分析】在执行双层嵌套for循环时,第1步:变量i赋值为1,接着变量

J会把所有的取值遍历一遍,即尸1,2,....,10,此时输出1行10列的为了让

一行输出完毕之后,产生换行效果,需要在第一层for循环内加上print函数,其效

果是一行结束后,产生一个换行符。第2步:变量i赋值为2,接着变量j会把所有

的取值再遍历一遍,此时会揄出2行10列的“*”,后面的循环以此类推。因此,可

以把变量i的取值看成是行号,而把变量j的取值看成是列号。

任务4:某店铺有3个热销商品类别,分别是手机、电视机、笔记本电脑,这三

个商品类别的商品编号分别为002、004、007,其销量分别为1000、2000、1500,通

过for循环结果和zip函数输出结果。具体代码如下:

code=['002,,,004';007']

products=[“手机",“电视机","笔记本电脑”]

sales=[1(X)0,2000,1500]

fori,j,kinzip(code,products,sales):

print("商品编号为:%s,商品名称为:%s,销量为:%d"%(i,j,k))

输出结果如图2-*所示。

Run:12-3

A.C:\Users\HHang\Arucondd3\p7th8.exeC:/User$/lllidn^/PychartProjects/$jfx/2-1.py

商品・号力:002,商品名样为:手机,M・力:1000

商品1号力:064,霸£名杼为:3初机,用■力:2900

sm商品・弓为:007.商品名狒为:W记停电❾,忸量为:158

*_Prxxeiifinishedwithexitcode0

图2-*任务4输出结果

课题2.4Python列表操作课型讲练

授课班级大数据授课时数2

1.能够创建列表。

教学目标2.能够对列表元素进行查询、增加、删除等操作。

3.能够对列表进行长度查询、元素包含等操作。

1.能够对列表元素进行查询、增加、删除等操作。

教学重点

教学难点1.能够对列表进行长度查询、元素包含等操作。

列表在数据分析占有十分重要的地位,因为在数据DataFrame中的一列

学情分析就可以看成是一个列表。因为列表的方法和属性很多,要全部掌握还是有一

定难度。

Pylhon的列表与元组属于序列类型,其每个元素都是按照位置编号来读取的,这

一点与数组类似,但是数组只能存储相同类型的元素,而列表和元组可以存储不同类

型的元素。列表与元组在很多方面的操作是类似的,但是两者也有不同,列表的元素

是可变的,而元组的元素是不可变的。

一、创建列表

创建列表时,只要逗号对元素进行分隔,再使用方括号括起来即可,列表的元素

不需要具有相同的类型,如[123]、不而昭]或[1,2,制都是列表。

示例代码如下:

list!123,4,5]

Iist2=['a':b'/c'l

list3=[l,2;a,;b,]

print("数字列表为:"Jisil)

print("字符串列表:Mist2)

prim("混合列表为:”,lisi3)

输出结果如图2-*所示。

Run:2-4

AC:\User$\lllldng\An4Condj)\python.ex<?C:/U$er$/1111Jn^/Pych«>nnProject^/^Jfx/2-4.py

数字列表为:[1,2,3,4,5J

字符串歼表:['a'»*b*»*c*J

2>混合列袅为:[1,2f匕,力」

U

»_Processfinishedwithex:tcode0

图2-*创建列表示例结果

二、访问列表元素与切片列表

L访问列表元素

列表的每一个元素都对应一个位置编号,这个位置编号被称为列表索引indexo

访问列表元素可以通过列表索引来实现,但是特别要注意的是列表索引是以0开头

的,即第1个元素的索引是0,而不是1。

除了常见的正向索引以外,列表索引还支持反向索引,即可以从列表的最后一个

元素开始访问,最后一个元素的索引为-I,倒数第2个元素的索引为-2,以此类推。

列表索引的访问一般格式为:

listfindex]

示例代码如下:

Iist=—门

print("列表为\list)

index=2

print(嗦引为%(1的元素为:%s"%(index,list[index]))

index=-1

print(嗦弓I为%(1的元素为:%s"%(index,lisl[index]))

输出结果如图2-*所不。

Run:2-4

>C:\Users\liliang\AnaconJa3\python.exeC:/Users/liliang/Pycharn<>rojects/sjfx/2-4.py

列表为:(*a*,*b*,*c*,'(J*,,•*,*f*)

索引为2的元素为工

s5索引为・i的元素为:f

».Processfinishedwithe<itcodeO

图2・*访问列表单个元素示例结果

2.访问切片列表

切片列表是指取出列表一段连续或不连续元素构成一个新列表,切片列表的一般

格式为:

list[start:last:step]

其中,start表示起始索引,start可以省略,默认是0。last表示终止索引,并且

这个终止索引是不能取到的cstep表示索引步长,即索引之间的间隔。

【注意】(1)start:last是一个左闭右开的区间,如Iist[1:4]表示的是输出列

表索引号1到3对应的元素.(2)有时使用默认索引更加方便,如list[:3]表示输

出列表索弓I号0至42对应的元素,Iist[::2]表示将列表list按间隔为2正序输出,

list[::-1]表示将列表list按间隔1倒序输出。

示例代码如下:

list=fa'/b'/c'/d'/e'/f]

print("列表为:

print(嗦引号1到3的切片列表为、list[l:4D

prim(嗦引号0到2的的切片列表为\list[:3])

print(嗦引号2到最后一个索引的切片列表为二

print("原列表索引0到4,步长为2的切片列表为:“Jist[0:5:2])

prinl("按间隔为2正序输出的切片列表为Rlist[:⑵)

print("按间隔为1倒序输出的切片列表为fist[::・l])

输出结果如图2・*所示。

Run:2-4

>C:\Users\liliang\Anaconda3\python.exeC:/U$er$/liliang/PychannProjects/$jfx/2-4.py

列表为:「a:'ce,-e\'f]

-一号1-3的切片列表力:「b,七,•<1•]

a5索引号。轲2的的切片列表为:「a]'b「飞」

过索弓I号2到金后一个索引的期片列表为:{L,婕]

»二原列表索弓2到4,步长为Z隹切N列表为:「a:c-,e]

・按间隔为2正序愉出的切片列表为:「a;飞,气」

■技问得为1的序恰出的切片列表为:(•(,<«,,•<1,,•€,,"b',•»•]

Processfinishedwithexitcode0

图2-水访问切片列表示例结果

三、添加列表元素

在列表中可以使用append方法在列表的最后一个元素后面再添加一个新元素。

添加列表新元素的一般格式为:

lisl.appciid(valuc)

其中,value表示新添加元素的值。

示例代码如下:

list=[l,2,3,4]

print("初始列表为:Fist)

list.append(5)

print("添加新元素的列表为门,list)

输出结果如图2-*所示。

Run:2-4

A-C:\Users\liliang\Anaconda3\pytbon.exeC:/Users/liliang/Pychar«Projects/sjfx/2-4.py

初始列表为:[1.2,3,4]

添加新元东的列表为:[1,2,3,4,SJ

二三

:iProcessfinishedwithexitcode0

温馨提示

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

评论

0/150

提交评论