Python程序设计-第2章-使用序列-1(第3次课).ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Python程序设计-第2章-使用序列-1(第3次课).ppt》由会员分享,可在线阅读,更多相关《Python程序设计-第2章-使用序列-1(第3次课).ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机编程导论计算机编程导论 西南林业大学西南林业大学计算机与信息学院计算机与信息学院2013.9ReviewChapter 1 sequential programming Use computers to solve problems Essentials of program design Flow chart Program running Problem-solving process Sequential programming复习第第1章章 顺序程序设计顺序程序设计 用计算机解决问题的方法用计算机解决问题的方法 程序设计要素程序设计要素 流程图流程图 程序运行过程程序运行过程 解
2、决问题的过程解决问题的过程 顺序程序设计顺序程序设计Chapter 2 Using Array Array are frequently used in storing data in program design. Almost every kind of programming language provides a array data structure, such as C and Basic provide one-dimensional, multi-dimensional array. Python provides the richest, the most flexible
3、, and the most powerful forms in program design. This chapter describes the array structures (lists, tuples, dictionaries) in Python, and how to use them to achieve simple and powerful programs.第第2章章 使用序列使用序列 序列是程序设计中经常用到的数据存储方式,序列是程序设计中经常用到的数据存储方式,几乎每一种程序设计语言都提供了表格数据结几乎每一种程序设计语言都提供了表格数据结构,如构,如C和和Ba
4、sic中的一维、多维数组等。中的一维、多维数组等。 Python提供的序列类型在所有程序设计语言提供的序列类型在所有程序设计语言中是最丰富,最灵活,也是功能最强大的。中是最丰富,最灵活,也是功能最强大的。 本章介绍使用本章介绍使用Python中常用的序列结构(列中常用的序列结构(列表、元组、字典)来实现一些简单而又功能强表、元组、字典)来实现一些简单而又功能强大的程序。大的程序。 2.1 Array ProblemQ2-1 Data sorting Description: Read 5 data from the keyboard, output in ascending order. So
5、lutions 1: Use five variables to store data, compare and sort.2.1 序列问题序列问题【问题问题2-1】 数据排序问题数据排序问题 问题描述:由用户从键盘输入五个数据,按升问题描述:由用户从键盘输入五个数据,按升序排序后输出。序排序后输出。 解决方案一:用五个变量来存储输入的五个数解决方案一:用五个变量来存储输入的五个数据,再用一一比较和交换来达到排序的目的。据,再用一一比较和交换来达到排序的目的。2.1 序列问题序列问题问题问题2-1程序:程序:#data sort Ques2_1_0.pyx1 = input(请输入第请输入第1
6、个元素个元素:)x2 = input(请输入第请输入第2个元素个元素:)x3 = input(请输入第请输入第3个元素个元素:)x4 = input(请输入第请输入第4个元素个元素:)x5 = input(请输入第请输入第5个元素个元素:)#将第将第1个元素排好序个元素排好序if x1x2: x1,x2=x2,x1if x1x3: x1,x3=x3,x1if x1x4: x1,x4=x4,x1if x1x5: x1,x5=x5,x1#将第将第2个元素排好个元素排好 if x2x3: x2,x3=x3,x2if x2x4: x2,x4=x4,x2if x2x5: x2,x5=x5,x2#将将第第
7、3个元素排好个元素排好 if x3x4: x3,x4=x4,x3if x3x5: x3,x5=x5,x3#将将第第4个元素排好,则第个元素排好,则第5个也排好个也排好 if x4x5: x4,x5=x5,x4#输出排序结果输出排序结果print x1,x2,x3,x4,x52.1 Array ProblemShortcoming of Solution 1: Need to define many variables to store data The program is not complex, but tedious, error-prone When sorting more data
8、, such as 50, the programming becomes intolerable When sorting even more data, such as 1000, it will be ridiculous to write a program in this way.2.1 序列问题序列问题解决方案一存在的问题:解决方案一存在的问题: 需要定义多个变量来存储数据需要定义多个变量来存储数据 程序虽不复杂,但很繁琐,写起来容易出错程序虽不复杂,但很繁琐,写起来容易出错 当待排序数据达到一定量,如当待排序数据达到一定量,如50个时,这样的个时,这样的编程方式变得无法忍受编程方
9、式变得无法忍受 当待排序数据达到一定量,如当待排序数据达到一定量,如1000个时,这个时,这样的程序无法编,无法看样的程序无法编,无法看2.1 Array ProblemSolution 2:Use ListAnalysis: Input ten data, and store them in a list Use pythons sort () method to sort the list data and output.结束结束输出排序后的结果输出排序后的结果开始开始用用sort( )方法对列表中数据进行排序方法对列表中数据进行排序输入输入10个数据个数据存放在列表中存放在列表中图图2-
10、1 2-1 数据排序流程图数据排序流程图2.1 序列问题序列问题解决方案二:解决方案二:使用列表使用列表分析:分析: 将用户输入的十个数将用户输入的十个数据存放到一个列表中据存放到一个列表中 用用python的的sort( )方方法对列表中数据进行法对列表中数据进行排序后输出。排序后输出。 结束结束输出排序后的结果输出排序后的结果开始开始用用sort( )方法对列表中数据进行排序方法对列表中数据进行排序输入输入10个数据个数据存放在列表中存放在列表中图图2-1 2-1 数据排序流程图数据排序流程图2.1 序列问题序列问题问题问题2-2程序:程序: #data sort:Ques2_1.py d
11、ata_list= #初始化一个空列表初始化一个空列表#循环十次,输入十个数字放到列表中循环十次,输入十个数字放到列表中for integer in range(10): x=input(请输入第请输入第+str(integer+1)+个元素:个元素:) data_list=data_list+xprint 排序前数据:排序前数据:,data_list#用用sort方法对列表中的数据进行排序方法对列表中的数据进行排序data_list.sort()print 排序后数据:排序后数据:,data_list方案二优点:方案二优点:不管数据量多大,只用定义一不管数据量多大,只用定义一个列表变量个列表
12、变量程序简单,程序代码量不随数程序简单,程序代码量不随数据量变大而增加据量变大而增加程序可以调用程序可以调用Python内置函数内置函数来实现排序来实现排序2.1 序列问题序列问题输入及程序运行结果:输入及程序运行结果:请输入第请输入第1个元素:个元素:54请输入第请输入第2个元素:个元素:23请输入第请输入第3个元素:个元素:67请输入第请输入第4个元素:个元素:84请输入第请输入第5个元素:个元素:41请输入第请输入第6个元素:个元素:68请输入第请输入第7个元素:个元素:34请输入第请输入第8个元素:个元素:56请输入第请输入第9个元素:个元素:98请输入第请输入第10个元素:个元素:6
13、1排序前数据:排序前数据: 54, 23, 67, 84, 41, 68, 34, 56, 98, 61排序后数据:排序后数据: 23, 34, 41, 54, 56, 61, 67, 68, 84, 982.1 Array ProblemQ2-3 Dictionary problem Description: According to the keyword (abbreviations) from users input, find name corresponding explanation Analysis: some words are stored in the dictionar
14、y, the key is the first letter of the word, the value is the explanation of the word. The user enters a valid letter, the program queries the corresponding word and output it. If the input is out of range, the program ends.2.1 序列问题序列问题【问题问题2-3】 查字典问题查字典问题 问题描述:根据用户输入的关键字的简写查询问题描述:根据用户输入的关键字的简写查询相应名称
15、解释。相应名称解释。 分分 析:将一些程序设计中常用名称存放析:将一些程序设计中常用名称存放在字典中,键是其英文的第一个字母,值是该在字典中,键是其英文的第一个字母,值是该名称的解释。由用户输入要查询的名称的英语名称的解释。由用户输入要查询的名称的英语第一个字母,若在合法的范围内则进行查询、第一个字母,若在合法的范围内则进行查询、输出,若不在范围内则结束程序。输出,若不在范围内则结束程序。2.1 序列问题序列问题算法流程图:算法流程图:开始开始定义字典定义字典结束结束图图2-2 2-2 查字典流程图查字典流程图输入输入ae范围内的字母范围内的字母输出查字典的结果输出查字典的结果2.1 序列问题
16、序列问题问题问题2-3程序:程序:#Dictionary Search:Ques2_3.py #定义字典定义字典dic=a:algorithm,算法,解决一种问题的大致步骤,算法,解决一种问题的大致步骤,b:bug,臭虫,程序里的错误,臭虫,程序里的错误,c:compile,编译,编译,把用高级程序语言写的程序转换成低级语言把用高级程序语言写的程序转换成低级语言,d:debugging,除虫,找到及移除程序设计错误的过,除虫,找到及移除程序设计错误的过程程,e:exception,异常,执行错误的另一个名称,异常,执行错误的另一个名称#输入要查询的关键字以便进行字典查询输入要查询的关键字以便进
17、行字典查询keyword=raw_input(请输入要查询的名词关键字(请输入要查询的名词关键字(ae):)#输入输入ae之间的关键字则进行查询,否则结束程序之间的关键字则进行查询,否则结束程序while keyword=a and keyword2.2 Array BasicsArray: A series of values, which are usually related to, and in a certain order.Array c:Include 12 integer elementsUse Array:Array nameposition numberThe positi
18、on of the first element is 0, c0The second element is c1The i-th element is ci-1Array can also be accessed from the rear:The last element is c-1Penultimate 2 is c-2Position number also known as the subscript or Index2.2 序列基础知识序列基础知识序列:序列:一系列连续值,它们通常是相关的,并且按一定一系列连续值,它们通常是相关的,并且按一定顺序排列。顺序排列。序列序列 c:12
19、个整数元素个整数元素引用元素:序列名引用元素:序列名位置编号位置编号第第1个元素的位置编号为个元素的位置编号为 0,c0第第 2个元素是个元素是 c1第第 i个元素是个元素是ci-1 序列也可以从尾部访问序列也可以从尾部访问:最后一个元素是最后一个元素是 c-1倒数第倒数第2个是个是 c-2倒数第倒数第 i个元素是个元素是 c-i位置编号位置编号也称也称“下标下标”或或“索引索引” ,是整数或整数表达式。,是整数或整数表达式。2.3 ListList: A list is an ordered set of values, where each value is identified by a
20、n index. The elements of a list can be any type Each data in the list called an element All its elements are separated by commas and placed in the bracket and List of examples: 10, 20, 30, 40#All the elements are integer data crunchy frog, ram bladder, lark vomit #All the elements are strings spam,
21、2.0, 5, 10, 20#The list contains a string element, a floating-point type element, an integer elements and a list2.3 列表列表列表:列表: 是是Python中内置数据类型,是一个元素的有序集合中内置数据类型,是一个元素的有序集合 一个列表中的数据类型可以各不相同一个列表中的数据类型可以各不相同 列表中的每一个数据称为元素列表中的每一个数据称为元素 其所有元素用逗号分割并放在一对中括号其所有元素用逗号分割并放在一对中括号“”和和“”中中列表举例:列表举例: 10, 20, 30, 4
22、0#所有元素都是整型数据的列表所有元素都是整型数据的列表 crunchy frog, ram bladder, lark vomit#所有所有元素都是字符串的列表元素都是字符串的列表 spam, 2.0, 5, 10, 20#该列表中包含该列表中包含了一个字符串元素、一个浮点类型元素、一个整型元素了一个字符串元素、一个浮点类型元素、一个整型元素和一个列表类型元素和一个列表类型元素2.3 List(1) Create: use the = to assign a list to a variable.For example: a_list = a, b, mpilgrim, z, example
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 程序设计 使用 序列
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内