福州大学《计算机基础》课件-第6章Python程序设计_第1页
福州大学《计算机基础》课件-第6章Python程序设计_第2页
福州大学《计算机基础》课件-第6章Python程序设计_第3页
福州大学《计算机基础》课件-第6章Python程序设计_第4页
福州大学《计算机基础》课件-第6章Python程序设计_第5页
已阅读5页,还剩77页未读, 继续免费阅读

下载本文档

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

文档简介

1第6章Python程序设计

福州大学《计算机基础》E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410Python程序设计6.1程序设计概述16.2Python语言基础26.3Python程序控制结构326.4Python函数与模块46.5Python数据库编程56.6Python非结构化数据处理6E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1程序设计概述3E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1程序设计概述

程序是算法在计算机上的具体实现,是用计算机语言描述的某一问题的解决步骤。用计算机程序解决问题时,需要将算法用某种计算机程序设计语言精确描述(也称“编写程序”),并在计算机上调试运行直至正确,才能最终解决问题。在计算机科学中,常见的程序设计语言有Python、C++、Java、VisualBasic等。同一个算法可以用不同的程序设计语言来实现。尽管不同的程序设计语言特点不同,语法规则也可能不同,但是程序设计方法基本相同。4E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410程序:计算机为完成某一个任务遵循一定规则和算法思想组织起来并执行的一系列代码(也称为指令序列)。一是描述问题涉及的每个对象及它们之间的关系;二是描述处理这些对象的规则。

程序=算法+数据结构

6.1程序设计概述E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410程序设计语言机器语言由二进制的0、1代码指令构成,能被计算机直接识别。但理解和记忆机器语言非常困难,并且容易出错,编程效率极低。汇编语言是符号化的机器语言,使用助记符与机器语言中的指令进行一一对应,它要求软件工程师对相应的机器硬件非常熟悉,因而汇编语言属于低级语言。高级语言是接近自然语言的一种计算机程序设计语言,更容易地描述计算问题并利用计算机解决计算问题。6.1程序设计概述E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1程序设计语言的分类-简例机器语言:0001000000100000汇编语言:addx,1高级语言:x=x+1E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1.1机器语言机器语言程序可读性差。由于不同型号计算机的指令系统不同,针对一种型号计算机书写的程序,不能直接拿到另一种不同型号的计算机上运行,程序可移植性差。E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1.2汇编语言汇编语言也是一种面向机器的语言,为了帮助人们记忆,它采用了符号(称为助记符)来代替机器语言的二进制码,所以又称为符号语言。E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.1.3高级语言高级语言是一种比符号语言更自然的语言,适应于不同类型的机器。用高级语言写的源程序也必须转换成机器语言程序,计算机才能执行。如VB、Pascal、C、Java等,以适应各种不同的应用领域。高级语言与具体的计算机相关度低,求解问题的方法描述直观,可读性好。E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410程序设计的基本步骤

1.需求分析 2.算法设计 3.编写代码 4.上机调试6.1程序设计概述E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410

6.2Python语言基础12E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.2Python语言基础-Python13

Python语言是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python简单易学,具有强大的数据处理能力。E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.2Python语言基础例:设计一个成绩计算程序,对输入的考试成绩与平时成绩

按7比3的

比例计算并输出总评成绩。代码如下: a=float(input("平时成绩:"))#输入平时成绩 b=float(input("考试成绩:"))#输入考试成绩 c=a*0.3+b*0.7#计算总评成绩 print("总评成绩:",round(c,2))#输出总评成绩14E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.2Python语言基础运行Python程序有两种方式:交互式是指Python解释器即时响应用户输入的每条代码,给出输出结果。文件式是指用户将Python程序写在一个文件中,然后启动Python解释器批量执行文件中的代码。交互式一般用于调试少量代码,文件式是主要的编程模式。15E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.2Python语言基础输入函数input()

input函数用于获得用户输入数据,其基本格式如下:

变量=input("提示字符串")

其中,变量和提示字符串均可省略。Input函数将用户输入以字符串返回。如果需要输入整数或小数,则需要使用eval、int或float函数进行转换。输出函数print()

Python中使用print函数完成基本输出操作。 print函数基本格式如下: print([obj1,…][,sep=""][,end=""],[,file=sys.stdout])16E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410标识符在Python语言中,用来对变量、函数、类等数据对象命名的有效字符串序列统称为标识符。Python语言规定标识符只能由字母、数字和下划线组成,且第一个字符必须为字母或下划线,不能以数字开头。标识符是区分大小写的,标识符中不能出现标点符号或运算符。在Python中,可以用中文作为变量名,非ASCII标识符也是允许的。在Python中,有一部分标识符是关键字,也称为保留字,是Python语言本身的一部分,变量、函数、类等数据对象的命名不能与Python的关键字相同。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410变量变量是指其值可以改变的量,每个变量都有一个变量名,对应计算机内存中具有特定属性的一个存储单元。该单元用来存储变量的值,在程序运行期间,这个单元中的值是可以改变的。变量通过变量名访问,变量的命名必须遵循标识符的命名规则。Python是动态类型语言,变量不需要显式声明数据类型,对其直接进行赋值即可使用,Python语言的解释器会根据变量的赋值自动确定其数据类型。通过内置的type()函数,可以测试一个变量的数据类型。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410数字布尔型(boolean)只有两个值:True或False。对于值为零的任何数字或空集(空列表、空元组、空字典),在Python中的布尔值都是False。在数学运算中,True和False分别对应于1和0。bool()是布尔型的转换函数,可以将其他数据类型转换为布尔型。整型(int)一般以十进制表示。Python也支持八进制、十六进制或二进制来表示整型。八进制整型以数字“0o”或“0O”开始。十六进制整型则以“0x”或“0X”开始。二进制整型以“0b”或“0B”开始。int()是整型的转换函数,可以将其他数据类型转换为整型,其最为常见的用法是将包含整数的字符串转换为整数。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410数字浮点型(float)也称小数,可以直接用十进制或科学计数法表示。浮点数通常都有一个小数点和一个可选的后缀e(大写或小写,表示科学计数法)。在e和指数之间可以用“+”或“-”表示正负,正数“+”号可以省略。float()是浮点型的转换函数,可以将其他数据类型转换为浮点型。Python还支持复数,复数由实数部分和虚数部分构成,可以用a+bj或者complex(a,b)表示,复数的实部a和虚部b都是浮点型。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410字符串字符串(str)是字符的有序序列,字符串中的字符按顺序排列。在Python中,字符串可以用单引号、双引号或三引号括起,但必须配对,其中三引号既可以是三个单引号,也可以是三个双引号。字符串类型支持比较运算,也支持连接运算符、切片运算符、成员运算符和格式化运算符。6.2Python语言基础0123456789HelloLucy-10-9-8-7-6-5-4-3-2-1E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410字符串切片运算符的作用是通过指定下标或索引范围来获得一个序列的一组元素,对于字符串类型来说就是取出已有字符串中的一部分(子串)成为一个新的字符串。成员运算符是用来判断一个元素是否属于一个序列的,对于字符串类型来说,就是判断一个字符(也可以是一个子串)是否出现在一个字符串中。成员运算符用“in”或“notin”表示,返回值是布尔值True或False。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410列表(list)是Python中重要的内置数据类型,是一个数据的有序序列,列表中元素的类型可以各不相同。列表中的元素用一对方括号“[”和“]”括起来,元素之间用逗号分割。列表的索引方式与字符串一样。创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。列表可以进行截取、组合等,使用下标索引来访问列表中的元素,同样也可以使用切片的形式截取列表中的一系列元素。使用加法运算符可以进行列表的连接操作,使用乘法运算符可以使列表重复多次,使用in运算符可以判断一个元素是否在列表中。Python提供了一系列关于列表的函数和方法。6.2Python语言基础-列表E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410元组Python的元组(tuple)与列表类似,元组中的元素用一对圆括号“(”和“)”括起来。不同之处在于元组的元素不能被修改、增删。元组是一个序列,所以可以访问元组中指定位置的元素,也可以用切片截取其中的一系列元素,方法与列表相同。与列表一样,元组也可以使用连接运算符(+)、复制运算符(*)、in/notin运算符。元组的相关函数有len()、max()、min()、sum()、sorted(),相关方法有count()、index(),函数tuple()可以将其它序列转换为元组。6.2Python语言基础E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410

6.3Python控制结构25E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410importrandomtotal=

0#赋值foriinrange(1,20000):#循环x,y=random.random(),random.random()

ifmath.sqrt(x**

2

+y**

2)

<

1:#判断total+=

1pi=

4.0

*total/

20000print(pi)

#输出26Python示例-计算圆周率E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410通过多次撒点,模拟概率,求面积,判断是否在圆内。撒点次数越多,圆周率就越准确。27计算圆周率-蒙特卡罗法E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.3Python控制结构单分支结构

语法格式为: if<条件表达式>: <语句序列>28单分支结构if<条件表达式>: <语句序列1>else: <语句序列2>多分支结构

语法格式为: if<条件表达式1>: <语句序列1> elif<条件表达式2>: <语句序列2> …… elif<条件表达式n>: <语句序列n> [else: <语句序列n+1>]

E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.3Python控制结构while循环结构

语法格式为: while<条件表达式>: <循环体>

运行机制:

计算条件表达式的值,当条件表达式的值为True时,重复执行循环体,直到条件表达式的值为False为止。

29E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.3Python控制结构while循环结构

在Python中可以用continue和break语句来控制循环结构程序的执行。continue语句用于跳过当前循环体中的剩余语句,并继续进行下一轮循环的执行。break语句用于终止整个循环,即使循环体中还有语句没有被执行。

在Python中,while语句也可以和else子句一起使用。else中的语句会在循环正常执行完的情况下被执行,即while循环不是通过break语句跳出循环的。

30E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.3Python控制结构for循环结构

语法格式为: for变量in序列: <循环体>说明

如果需要遍历一个数字序列,可以使用Python中的内置函数range(),该函数用于生成一个迭代的等差数字序列。在Python中,for循环结构和while循环结构一样,可以用continue和break语句来控制循环结构程序的执行,也可以和else子句一起使用。31E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410Python循环-乘法口诀表foriinrange(1,

10):#九九乘法表

forjinrange(1,i+1):

print("%d*%d=%2d"%(j,i,j*i),end='')

print()i=1whilei<10:j=1

whilej<=i:

print("%d*%d=%2d"%(j,i,j*i),end='')j+=1

print();i+=132E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410

6.4Python函数与模块33E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.4Python函数与模块Python语言为用户提供了众多模块,一个模块其实就是一个Python文件,一个模块内往往包含了许多功能函数,用户只要将模块导入到自己的程序中,就可以使用这些模块中的函数,这是一种代码的重用方式,它减少了程序员编写程序的代码量。Python还允许用户自己定义一些程序自身所需的函数,这为编写程序提供了一种方便的手段。在调用模块中的函数之前,先要使用import语句导入相应的模块,然后就可以访问模块中的任何函数,其方法是在函数名前加上模块名。34E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410Python模块导入importmathprint(math.ceil(4.1))#5print(math.exp(1))#2.71828182845904535frommathimportceilfrommathimportexpprint(ceil(4.1))#5print(exp(1))#2.718281828459045E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.4Python函数与模块用户自定义函数

Python自定义函数的基本格式如下: def<函数名>([<形参列表>]): <语句序列> [return<表达式>]

说明: (1)def为自定义函数的关键字。函数的首行与末行之间是描述函数操作的语句序列,称为“函数体”。 (2)函数名要符合标识符命名规则。 (3)形参列表指明了从调用语句传递给被调用函数的变量,各变量名之间用逗号分隔。若无参数,形参两旁的括号也不能省略。 (4)函数体中return语句的作用是把该语句后的表达式作为函数的返回值。若缺少该语句,函数以None作为返回值

36E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.4Python函数与模块-自定义函数def

prime(n):

#自定义函数

forjinrange(2,i):

ifi%j==0:

return

False

return

Trueforiinrange(2,100):

ifprime(i):

#调用函数

print(i)37对于函数的参数,在函数定义中的参数称为形参,在函数调用时使用的参数称为实参。定义函数时可以为形参提供默认值,在调用函数时如果没有提供相应的实参,则使用默认值。

E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.4Python函数与模块-匿名函数#匿名函数定义,默认值参数

f=lambdaa,b=1,c=2:a+b+cprint(f(1,2,3))#6

print(f(1,2))#5

print(f(1))#4

#匿名函数作为列表元素

f=[lambdax,y:x+y,lambdax,y:x-y]

print(f[0](1,2),f[1](3,4))#3-138匿名函数匿名函数是指没有函数名的简单函数,只可以包含一个表达式,不允许包含其它复杂的语句,表达式的结果就是函数的返回值。格式如下:

lambda

<参数列表>:<表达式>

E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.4Python函数与模块-递归函数递归函数在一个程序中,如果存在程序自己调用自己的现象就构成了递归。由分支语句构成。调用方法和普通函数相同。

39def

f(n):

#递归函数定义

ifn==1

orn==2:return

1else:

returnf(n-1)+f(n-2)foriinrange(1,20+1):print(f(i))

#函数调用E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410

6.5Python数据库编程40E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.5Python数据库编程以Access数据库为例,使用Python进行数据库编程的基本步骤如下:(1)导入pyodbc模块库。(2)使用连接字符串建立与数据库的连接,指定要数据库文件,返回connection连接对象。(3)调用cursor()函数创建游标对象cursor。(4)使用游标对象cursor的execute()函数执行相应的数据库SQL命令,包括修改和查询等。(5)获取游标对象执行的结果集。(6)提交数据库事务。(7)关闭与数据库的连接。41E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410

6.6Python非结构化数据处理42E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410网页数据的组织形式网页是用HTML超文本标记语言编写的文本文件,“超文本”的意义在于,HTML允许在文本中嵌入一些标签(Tag),以指示浏览器如何对文本进行操作。在HTML语言中定义了若干元素,用以表示文档结构、规定信息格式、指定操作功能等。HTML元素一般上由起始标签和结束标签组成,它们都必须用一对尖括号“<>”括起来。为了能够从网页源代码中爬取数据,需要分析数据所在标签的特征,以便Python调用相关的模块库进行处理。6.6Python非结构化数据处理-爬虫E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410requests库requests是一个Python的第三方库,调用一次requests库的get函数就相当于向服务器发起了一次请求,服务器会返回一个响应,requests库会把该响应的信息封装到一个Response响应对象中。Response对象的text属性和content属性都表示响应的内容。Beautifulsoup4从网页的HTML源代码中抽取所需的数据,则需要使用另外一个第三方库Beautifulsoup4。它能够根据HTML语法建立解析树,进而高效解析其中的内容。6.6Python非结构化数据处理-爬虫E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.6Python非结构化数据处理中文文本分析实例

文本分析是指对文本的表示及其特征项的提取,它把从文本中抽取出的特征词进行量化来表示文本信息,目的是从文本数据中提取出符合需要的、感兴趣的和隐藏的信息。

文本内容是非结构化的数据,要从大量的文本中提取出有用的信息,需要将文本从无结构的原始状态转化为便于计算机处理的数据。典型的文本分析过程主要包括:分词、特征提取、数据分析、结果呈现等。

45E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106.6Python非结构化数据处理中文文本分析实例中文分词是将一个汉字序列切分成一个一个单独的词。模块jieba采用的是基于词典的分词方法划分为词。词云是目前常用的关键词可视化形式,wordcloud是Python中非常优秀的词云展示第三方库,以词为基本单位,对文本中出现频率较高的关键词予以视觉化的展示。

46E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410471.关于程序中的变量,下面说法中错误的是:()中。一旦将数据存入某变量,读取变量中的值,不会改变变量的内容A一旦将数据存入某变量,以后就不能将新的数据存入该变量B一旦将数据存入某变量,以后可以将新的数据存入该变量C一旦将数据存入某变量,只要不把新的数据存入,变量的内容不会改变D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410482.关于Python程序格式框架,以下选项中描述错误的是()Python语言不采用严格的“缩进”来表明程序的格式框架APython单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属范围BPython语言的缩进可以采用Tab键实现C判断、循环、函数等语法形式能够通过缩进包含一批Python代码,进而表达对应的语义D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410493.以下选项中,关于Python字符串的描述错误的是()Python语言中,字符串是用一对双引号""或者一对单引号''括起来的零个或者多个字符A字符串包括两种序号体系:正向递增和反向递减B字符串是字符的序列,可以按照单个字符或者字符片段进行索引CPython字符串提供区间访问方式,采用[N:M]格式,表示字符串中从N到M的索引子字符串(包含N和M)D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410504.给出如下代码

TempStr="HelloWorld"

可以输出“World”子串的是()print(TempStr[–5:0])Aprint(TempStr[–5:])Bprint(TempStr[–5:–1])Cprint(TempStr[–4:–1])D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410515.关于赋值语句,以下选项中描述错误的是()a,b=b,a可以实现a和b值的互换Aa,b,c=b,c,a是不合法的B在Python语言中,“=”表示赋值,即将“=”右侧的计算结果赋值给左侧变量,包含“=”的语句称为赋值语句C赋值与二元操作符可以组合,例如+=D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410526.关于Python语言的特点,以下选项中描述错误的是()Python语言是脚本语言APython语言是非开源语言BPython语言是跨平台语言CPython语言是通用编程语言D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410537.关于import引用,以下选项中描述错误的是()可以使用fromturtleimportsetup引入turtle库A使用importturtleast引入turtle库,取别名为tB使用importturtle引入turtle库Cimport保留字用于导入模块或者模块中的对象D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410548.给出如下代码

s='Pythonisbeautiful!'

可以输出“python”的是()print(s[0:6].lower())Aprint(s[:–14])Bprint(s[0:6])Cprint(s[–21:–14].lower)D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410559.下列Python保留字中,不用于表示分支结构的是()elifAinBifCelseD提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644105610.以下选项中,符合Python语言变量命名规则的是()TemplistA!1B(VR)C5_1D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644105711.关于Python的分支结构,以下选项中描述错误的是()Python中if-elif-else语句描述多分支结构A分支结构使用if保留字BPython中if-else语句用来形成二分支结构C分支结构可以向已经执行过的语句部分跳转D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644105812.关于Python循环结构,以下选项中描述错误的是()break用来跳出最内层for或者while循环,脱离该循环后程序从循环代码后继续执行A每个continue语句只有能力跳出当前层次的循环B遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等CPython通过for、while等保留字提供遍历循环和无限循环结构D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644105913.以下选项中描述正确的是()条件24<=28<25是合法的,且输出为FalseA条件35<=45<75是合法的,且输出为FalseB条件24<=28<25是不合法的C条件24<=28<25是合法的,且输出为TrueD提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106014.关于递归函数的描述,以下选项中正确的是()函数名称作为返回值A包含一个循环结构B函数比较复杂C函数内部包含对本函数的再次调用D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106115.以下选项中,对于函数的定义错误的是()defvfunc(a,b=2):Adefvfunc(*a,b):Bdefvfunc(a,b):Cdefvfunc(a,*b):D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106216.关于Python的lambda函数,以下选项中描述错误的是()f=lambdax,y:x+y执行后,f的类型为数字类型Alambda用于定义简单的、能够在一行内表示的函数B可以使用lambda函数定义列表的排序原则Clambda函数将函数名作为函数结果返回D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106317.关于Python的元组类型,以下选项中描述错误的是()元组中元素不可以是不同类型A元组一旦创建就不能被修改B元组采用逗号和圆括号(可选)来表示C一个元组可以作为另一个元组的元素,可以采用多级索引获取信息D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106418.设序列s,以下选项中对max()的描述正确的是()返回序列s的最大元素,如果有多个相同,则返回一个元组类型A返回序列s的最大元素,如果有多个相同,则返回一个列表类型B返回序列s的最大元素,但要求s中元素之间可比较C一定能够返回序列s的最大元素D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106519.二维列表ls=[[1,2,3],[4,5,6],[7,8,9]],以下选项中能获取其中元素5的是()ls[1][1]Als[–2][–1]Bls[4]Cls[–1][–1]D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C240644106620.以下选项中,不是具体的Python序列类型的是是()元组类型A字符串类型B数组类型C列表类型D提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410671.在Python中,加法运算符可以用来连接字符串并生成新字符串。(

)对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410682.字符串属于Python有序序列,和列表、元组一样都支持双向索引。()对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410693.在Python中,可以对列表进行切片操作,但不能对元组和字符串进行切片操作。()对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410704.只有Python扩展库才需要导入以后才能使用其中的对象,Python标准库不需要导入即可使用其中的所有对象和方法。(

)对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410715.在Python3.x中可以使用中文作为变量名。(

)对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07E32711A616D0819A113DEDB8F18F5C0F03BC41BA969B41D5F0472B73A72FC0F2BE2AA536FE6A0D217C57F7FE9DBF2DB6715F2B3FB879C24064410726.Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。()对A错B提交单选题1分E6636B02012BD195C019CE06C16E3004C33D07

温馨提示

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

最新文档

评论

0/150

提交评论