




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课时内容程序设计基础(二)授课时间课时3教学目标Python语法基础。Python语言介绍。教学重点掌握程序设计的基本概念掌握程序设计的基本方法教学难点如何完成Python语言程序编写的过程及程序的执行。三种结构的使用,特别是循环结构。教学设计1、教学思路:(1)对程序设计的基本概念进行简述;(2)浅入深地介绍程序、程序设计、算法、程序设计的基本控制结构、常用的程序设计语言、Python语言等知识;(3)通过程序设计的实例介绍,让读者了解程序设计的基本方法和步骤。2、教学手段:(1)通过演示讲解基础知识,讲解结束后进行练习;(2)对于重点操作可以着重演示,并加强举例说明。3、教学资料及要求:除了本章学到的数据库的相关知识外,还要让学员了解程序设计的基本控制结构,并对程序设计的基本方法和步骤有一个初步的认识。教学内容知识回顾:复习程序设计的概念,机器语言,汇编语言,高级语言,算法的概念。讨论问题:1.利用计算机程序语言能做什么?2.伪语言和流程表示算法各有什么优缺点?内容大纲:具体可结合本章的PPT课件进行配合讲解。任务一程序设计语言的概念任务要求:复习不同层次的程序设计语言任务实现:(一)机器语言由二进制代码形式组成的规定计算机动作的符号叫作计算机指令,这些指令的集合就是机器语言。机器语言与计算机硬件关系密切。用时烦琐、费时,特别在程序有错需要修改时,更是如此。(二)汇编语言为了解决使用机器语言编程的困难,20世纪50年代初,人们发明了汇编语言:用一些简洁的英文字母、符号串来替代一个特定含义的二进制串。例如:即0000001011001111就表示ADDCL,BH(三)高级语言从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种接近数学语言或自然语言,同时又不依赖计算机硬件,编出的程序能在所有机器上通用的语言。影响较大、使用较普遍的有C、C#、VisualC++、VisualBasic、.NET、Delphi、Java、ASP等用高级语言表示上述功能:CL=CL+BH通常将高级语言翻译为机器语言的方式有两种:解释方式和编译方式。任务二Python程序设计语言任务要求:了解Python语言的特点,学会编写简单的Python语言程序。任务实现:Python语言概述Python语言是非常优秀的开源项目,其解释器的全部代码都是开源的,用户可以到其官方网站下载。Python软件基金会(PythonSoftwareFoundation,PSF)则致力于更好地推进并保护Python语言的开放性。Python语言语法特点1.注释规则(1)单行注释(#)单行注释以#开头多行注释。多行注释用三个单引号(''')或双引号(""")将注释语句括起来。2.语句换行如果一个语句太长,全部写在一行会显得很不美观,使用反斜杠(\)可以实现一条长语句的换行;3.一行写多个语句Python允许将多个语句写在同一行上,语句之间用分号隔开。4.代码块缩进位置相同的一组语句形成一个代码块。例如,在下面示例代码中,ifTrue:下面的两行代码就构成了一个代码块。5.缩进分层Python程序语言使用严格的缩进来表示语句之间的逻辑关系,使得程序更加清晰和美观。强制缩进也可以避免不好的编程习惯,使得不正确的语句不能通过编译。在正确的位置打上“:”,则系统会在下一行自动缩进。例如下面程序所示。求1~100的和:sum=0 #累加器设置为sumforIinrange(101): #让I从1变化到100sum=sum+I #将I的值加到sum上print(sum) #输出结果在这个程序中,第三行缩进表示该语句是第二行for循环体中的语句,而第一行和第四行不属于循环。6.模块Python中的模块分为内置模块和非内置模块。import[模块名]变量、常量、标识符和关键字变量和保留字在给变量命名时需要遵循一定的规则。Python语言对变量命名可以使用大写字母、小写字母、数字、下画线和汉字等字符(从编程习惯和跨平台兼容性方面考虑,不建议使用汉字为变量命名),但是首字符不能是数字。变量名中间不能有空格,变量名的长度在语法上不做限制,但是受计算机资源层面的限制。在为变量命名时,要注意和Python的保留字有所区别。保留字是Python语言已经设定好的具有特殊用法和含义的标识符。每种程序设计语言都有一套保留字,保留字一般用来构成程序整体框架、表达关键值和具有结构性的复杂语义等。赋值语句在Python语言中,赋值号使用“=”,将“=”右侧的计算结果赋给左边的变量或对象属性。所以把包含“=”的语句称为赋值语句。基本格式如下:<变量1>=<表达式1><对象1>.<属性x>=<表达式x>给变量x赋值为2,给变量y赋值为3,语句可以写为:>>>x=2>>>y=3Python语言提供了一种简单的方式可以实现交换两个变量的值的操作,即同步赋值。基本格式如下:<变量1>,…,<变量n>=<表达式1>,…,<表达式n>如果采取同步赋值,交换x和y的值,则语句如下:>>>x,y=y,x基本数据类型1.数字类型Python语言设置了3种数据类型:整数、浮点数和复数。表8.1内置数值运算符操作符功能+加法运算−减法运算*乘法运算/浮点除。结果为浮点数//整除。结果为不大于商的最大整数%余除。结果为余数**指数运算。x**y即xy2.字符串类型对日常信息的表示,除了数值类型,还有字符串类型。字符串类型用于表示文本数据。在Python语言中,出现在两个单引号(')或者两个双引号(")中的内容,都被视为字符串类型数据。表8.8字符串基本操作符操作符功能x+y将字符串x和y进行连接x*n将字符串x复制n次str[i]得到字符串中的第i个字符str[n:m]从字符串中获得从n到m(不包括m)的子串xiny判断字符串x是否存在于字符串y中,是返回True,否返回False输入函数在编写程序的过程中,参与计算的数值除了可以通过赋值语句获得外,更多的情况是通过键盘输入。在Python语言中,可以利用input()函数来获得程序需要的数据。基本语法格式如下:<变量1>=input(<提示性文字>)输出函数当计算完成后,计算结果已经生成,但是如果不使用语句将其显示出来,那么它只存在于内存中,用户看不到。所以,每当需要看到计算情况时,可以使用print()函数。基本语法格式如下:print(value,…,sep='',end='\n')【例】从键盘输入半径的值,计算圆的周长和面积。r=eval(input('请输入圆的半径:')) #输入部分:变量r代表圆的半径l=2*3.14*r #计算部分:变量l代表圆的周长s=3.14*r*r #计算部分:变量s代表圆的面积print('圆的周长是:{:.2f}'.format(l)) #输出部分:输出周长print('圆的面积是:{:.2f}'.format(s)) #输出部分:输出面积在语句“print('圆的周长是:{:.2f}'.format(l))”中,大括号相当于卡槽,将format后面括号里的内容填入大括号所在的位置。在大括号中的“:.2f”是将format括号里的数据进行保留两位小数的处理。Python控制结构条件分支语句1.单分支结构在Python语言中,单分支语句的基本语法格式如下:if<条件>:<语句块>当条件成立,则执行语句块中的程序;否则跳过分支结构。【例】程序举例:如果购物金额超出1万元,那么超出的部分打九折,并将实际付款金额显示输出。程序如下:money=eval(input('请输入金额:'))ifmoney>1000:money=10000+(money-10000)*0.9print('实际金额是:{:.2f}'.format(money))2.双分支结构双分支语句的基本语法格式如下:if<条件>:<语句块1>else:<语句块2>当条件成立时,执行语句块1的内容;条件不成立时,执行语句块2的内容。3.多分支结构多分支语句的基本语法格式如下:if<条件>:<语句块1>elif<条件2>:<语句块2>…else:<语句块N>Python会依次计算第一个结果为True的条件,并执行该条件下的语句块。else是可选语句,如果没有条件成立,则执行else后面的语句块。循环语句1.遍历循环:for语句如果循环次数确定,可以使用for语句。基本语法结构如下:for<循环变量>in<遍历结构>:<循环体>在Python中for语句的循环次数是由遍历结构中元素个数确定的。遍历循环通过从遍历结构中逐一提取元素赋值给循环变量,然后对于提取的每个元素执行一次循环体。遍历结构可以是字符串、文件或是range()函数等。【例】编写一个程序,求1~100这100个自然数的和。s=0foriinrange(101):s=s+iprint(s)在这个程序中,range(101)表示了循环结构是从1~100的自然数。若要表示1~20的自然数,可以写为range(21),最后一个数取不到。【例】利用循环,引用字符串中的每个字符。forsin"程序设计":print('循环进行中:'+s)else:print('循环结束')在这个遍历循环中,循环结构为字符串,那么循环变量s依次取得字符串中的每一个字符然后输出。输出结果如图10.17所示。遍历循环运行结果2.无限循环:while语句在大多数实际问题的解决过程中无法使用遍历循环,而需要根据某些特定的条件执行循环语句,这种循环称为无限循环。基本语法结构如下:while<条件>:<循环体>在while中,当条件成立时,执行循环体,条件不成立时,跳过while语句,执行后面与之同级的语句。Python数据结构列表和字典列表是包含0个或多个对象引用的有序序列,没有长度限制。列表用一对中括号“[]”表示。列表的内容和长度都是可变的。创建列表的基本语法如下:<列表名>=[元素1,元素2,…,元素N]各个元素可以是数字,可以是字符串,也可以是列表。列表也属于序列型数据。列表一旦生成,每一个元素就有了自己的索引号。可以对列表进行增删查改的操作。>>>list1=[1,2,3,'Python','你好',[4,5,5]]#创建一个列表,命名为list1>>>list1 #显示列表内容[1,2,3,'Python','你好',[4,5,5]]>>>list1[3] #显示索引号为3的元素'Python'>>>list1[5] #显示索引号为5的元素,该元素为列表[4,5,5]>>>list1.append(6) #在列表list1末尾追加一个元素6>>>list1 #显示列表内容[1,2,3,'Python','你好',[4,5,5],6]>>>list1.remove(3) #移除列表list1中的元素3>>>list1[1,2,'Python','你好',[4,5,5],6]>>>dellist1[0] #删除list1中指定位置的元素>>>list1[2,'Python','你好',[4,5,5],6]>>>list1.insert(1,'插入') #在指定位置,插入具体元素>>>list1[2,'插入','Python','你好',[4,5,5],6]与列表功能类似的还有元组。在Python中,元组是由一对()括起来的序列,元组一旦生成便不能更改,它是不可变类型。2.字典在很多具体的应用中,使用索引号不一定方便。Python语言提供了一种数据结构:字典。字典是由键值对组成的序列。通过键来查找值。例如电话号码簿就是典型的键值组合。通过姓名来查找电话号码。创建字典的基本语法格式如下:<字典名1>={键1:值1,键2:值2,…,键N:值N}字典由大括号括起来,键和值由冒号连接,各个对之间用逗号间隔。>>>dic1={'河北':'石家庄','江苏':'南京','浙江':'杭州','河南':'郑州'}#创建一个字典名为dic1>>>dic1.keys() #列出字典中所有键dict_keys(['河北','江苏','浙江','河南'])>>>dic1.values() #列出字典中所有值dict_values(['石家庄','南京','杭州','郑州'])>>>dic1.items() #列出所有键值对dict_items([('河北','石家庄'),('江苏','南京'),('浙江','杭州'),('河南','郑州')])在Python中用{}括起来的非键值对序列叫作集合,与数学概念的集合相似,可以进行集合的交、并、差等运算,集合中的数据不能重复。标准库和第三方库1.标准库Python拥有强大的标准库。Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。Python标准库命名接口清晰、文档良好,很容易学习和使用。表8.12常用的标准库应用方向标准库应用方向标准库文本string:通用字符串操作re:正则表达式操作difflib:差异计算工具textwrap:文本填充unicodedata:Unicode字符数据库stringprep:互联网字符串准备工具readline:GNU按行读取接口rlcompleter:GNU按行读取的实现函数数据类型datetime:基于日期与时间工具calendar:通用月份函数collections:容器数据类型collections.abc:容器虚基类heapq:堆队列算法bisect:数组二分算法array:高效数值数组types:内置类型的动态创建与命名copy:浅拷贝与深拷贝pprint:格式化输出reprlib:交替repr()的实现数学numbers:数值的虚基类math:数学函数cmath:复数的数学函数decimal:定点数与浮点数计算fractions:有理数random:生成伪随机数文件与目录zlib:兼容gzip的压缩gzip:对gzip文件的支持bz2:对bzip2压缩的支持lzma:使用LZMA算法的压缩zipfile:操作ZIP存档tarfile:读写tar存档文件第三方库Python的第三方库大体分类有以下领域:网络爬虫
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石化管工考试试题及答案
- 新能源汽车项目评估与管理考试题及答案
- 家具行业设计师职业素养与能力模型试题及答案
- 新能源汽车技术的影响因素分析试题及答案
- 答辩能力测试题及答案
- 新能源汽车产业链条的完整性研究试题及答案
- 新能源二手车市场2025年评估与流通产业链布局研究报告
- 智能化监测技术在2025年环境监测数据质量控制中的应用前景分析报告
- 四川省德阳市重点名校2024-2025学年初三期末试题含解析
- 施工安全隐患整改的有效实施与试题及答案
- 《动画素描》第一章 动画素描概述
- 无轨胶轮车运行标准作业流程
- GB/T 12513-2006镶玻璃构件耐火试验方法
- 2023年云南省昆明市中考英语模试卷(含答案解析)
- 公路工程施工现场安全检查手册
- 部编版小学语文六年级下册《采薇》课件(完美)
- 幼儿园绘本故事:《十二生肖》 课件
- 马家河金矿选矿试验报告
- “新时代好少年”推荐表
- 园林绿化工程监理实施细则(完整版)
- 草坪学实习报告模板-Copy
评论
0/150
提交评论