Python基础培训教程课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Python基础培训教程课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 基础 培训 教程 课件
- 资源描述:
-
1、 简介 Python的官方介绍 Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个理想的脚本语言,特别适用于快速的应用程序开发。Python的特色简单简单 Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。易学易学 就如同你即将看到的一样,Python极其容易上手。前面已
2、经提到了,Python有极其简单的语法。免费、开源免费、开源 Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。高层语言高层语言 当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。可移植性可移植性 由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免
3、使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC!2023-1- 简介解释性解释性 一个用编译性语言比如C或C+写的程序可以从源文件(即C或C+语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这
4、个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码 运行 程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。面向对象面向对象 Python即支持面向过程的编程也支持面向对
5、象的编程。在 面向过程 的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在 面向对象 的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C+和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。可扩展性可扩展性 如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C+编写,然后在你的Python程序中使用它们。可嵌入性可嵌入性 你可以把Python嵌入你的C/C+程序,从而向你的程序用户提供脚本功能。丰富的库丰富的库 Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线
6、程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。2023-1- is a string、“Its a string!”这样的字符串,不能改变它的值。数数:在Python中有4种类型的数整数、长整数、浮点数和复数,依次如下:2、1000000、3.23和52.3E-4、(-5+4j)和(2.3-4
7、.6j)。字符串:使用单引号(字符串:使用单引号()使用双引号()使用双引号()使用三引号()使用三引号(或或)利用三引号,你可以指示一个多行的字符串,你可以在三引号中自由的使用单引号和双引号。如:Quote me on this Whats your name?“This is a multi-line string.This is the first line.This is the second line.Whats your name?,I asked.He said Bond,James Bond.2023-1-153基本概念 假设你想要在一个字符串中包含一个单引号,就要用到转义符如
8、 Whats your name?。自然字符串自然字符串 如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串。自然字符串通过给字符串加上前缀r或R来指定。例如rNewlines are indicated by n。变量变量 仅仅使用字面意义上的常量很快就会引发烦恼我们需要一种既可以储存信息 又可以对它们进行操作的方法。这是为什么要引入 变量。变量就是我们想要的东西它们的值可以变化,即你可以使用变量存储任何东西。变量只是你的计算机中存储信息的一部分内存。与字面意义上的常量不同,你需要一些能够访问这些变量的方法,因此你给变量名字。2023-1- 缩进缩进 空白在
9、Python中是重要的。事实上行首的空白是重要的行首的空白是重要的。它称为缩进缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。这意味着同一层次的语句必须必须有相同的缩进。每一组这样的语句称为一个块块。我们将在后面的章节中看到有关块的用处的例子。你需要记住的一样东西是错误的缩进会引发错误。如下:SyntaxError:invalid syntax x=10def changeString():global x x=20print x-,x 2023-1- 右移把一个数的比特向右移一定数目11 1得到5。11按比特表示为1011,向右移动1比特后得到101,
10、即十进制的5。 3得到6按位翻转x的按位翻转是-(x+1)5得到6。小于返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。5 3返回0(即False)而3 5返回1(即True)。比较可以被任意连接:3 5 大于返回x是否大于y5 3返回True。如果两个操作数都是数字,它们首先被转换为一个共同的类型。否则,它总是返回False。=小于等于返回x是否小于等于yx=3;y=6;x=大于等于返回x是否大于等于yx=4;y=3;x=y返回True。=等于比较对象是否相等x=2;y=2;x=y返回True。x=str;y=s
11、tR;x=y返回False。x=str;y=str;x=y返回True。!=不等于比较两个对象是否不相等x=2;y=3;x!=y返回True。not布尔“非”如果x为True,返回False。如果x为False,它返回True。x=True;not y返回False。and布尔“与”如果x为False,x and y返回False,否则它返回y的计算值。x=False;y=True;x and y,由于x是False,返回False。在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算。or布尔“或”如果x是True,它返回Tru
12、e,否则它返回y的计算值。x=True;y=False;x or y返回True。短路计算在这里也适用。2023-1- 运算符优先级运算符优先级下面这个表给出Python的运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合)。这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上部的运算符。2023-1-158运算符运算符描述描述lambdaLambda表达式or布尔“或”and布尔“与”not x布尔“非”in,not in成员测试is,is not同一性测试,=,!=,=比较|按位或按位异或&按位与移位+,-加法与减法*,/,%乘法、除法
13、与取余+x,-x正负号x按位翻转*指数x.attribute属性参考xindex下标xindex:index寻址段f(arguments.)函数调用(experession,.)绑定或元组显示expression,.列表显示key:datum,.字典显示expression,.字符串转换 表达式表达式#!/usr/bin/python#Filename:expression.pylength=5breadth=2area=length*breadthprint Area is,areaprint Perimeter is,2*(length+breadth)矩形的长度与宽度存储在以它们命名的变
14、量中。我们借助表达式使用它们计算矩形的面积和边长。我们表达式length*breadth的结果存储在变量area中,然后用print语句打印。在另一个打印语句中,我们直接使用表达式2*(length+breadth)的值。2023-1- if语句用来检验一个条件,如果 条件为真,我们运行一块语句(称为 if-块),否则 我们处理另外一块语句(称为 else-块)。else 从句是可选的。例子:if guess=number:elif guess number:else:while语句语句 只要在一个条件为真的情况下,while语句允许你重复执行一块语句。while语句是所谓 循环 语句的一个例
15、子。while语句有一个可选的else从句。例子:while running:else:2023-1-1510控制流控制流 for循环循环 for.in是另外一个循环语句,它在一序列的对象上 递归 即逐一使用队列中的每个项目。例子:for i in range(1,5):print i#range(1,5)给出序列1,2,3,42023-1-1511结果: break语句是用来 终止 循环语句的,即哪怕循环条件没有称为False或序列还没有被完全递归,也停止执行循环语句。例子:while True:s=raw_input(Enter something:)if s=quit:break con
16、tinue语句语句 continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后 继续 进行下一轮循环。例子:while True:s=raw_input(Enter something:)if s=quit:break if len(s)y:print x,is maximum else:print y,is maximumprintMax(3,5)print printMax._doc_ 结果:5 is maximumPrints the maximum of two numbers.The two values must be integers.2023-1- import
17、 sys sys.path包含输入模块的目录名列表。字节编译的字节编译的.pyc文件文件 输入一个模块相对来说是一个比较费时的事情,所以Python做了一些技巧,以便使输入模块更加快一些。一种方法是创建 字节编译的文件,这些文件以.pyc作为扩展名。字节编译的文件与Python变换程序的中间状态有关(是否还记得Python如何工作的介绍?)。当你在下次从别的程序输入这个模块的时候,.pyc文件是十分有用的它会快得多,因为一部分输入模块所需的处理已经完成了。另外,这些字节编译的文件也是与平台无关的。所以,现在你知道了那些.pyc文件事实上是什么了。2023-1-1517模块模块 from.imp
18、ort语句语句 如果你想要直接输入argv变量到你的程序中(避免在每次使用它时打sys.),那么你可以使用from sys import argv语句。如果你想要输入所有sys模块使用的名字,那么你可以使用from sys import*语句。这对于所有模块都适用。一般说来,应该避免使用from.import而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。from sys import*或者 from sys import argv 或者 import sys 模块的模块的_name_ 每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有
19、用就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的_name_属性完成。例子:if _name_=_main_:2023-1- 创建你自己的模块是十分简单的,你一直在这样做!每个Python程序也是一个模块。你已经确保它具有.py扩展名了。下面这个例子将会使它更加清晰。例例8.3 如何创建你自己的模块如何创建你自己的模块#!/usr/bin/python#Filename:mymodule.pydef sayhi():print Hi,this is mym
20、odule speaking.version=0.1#End of mymodule.py 上面是一个 模块 的例子。你已经看到,它与我们普通的Python程序相比并没有什么特别之处。我们接下来将看看如何在我们别的Python程序中使用这个模块。记住这个模块应该被放置在我们输入它的程序的同一个目录中,或者在sys.path所列目录之一。import mymodule from mymodule import*mymodule.sayhi()print Version,mymodule.version 2023-1-1519模块模块 你可以使用内建的dir函数来列出模块定义的标识符。标识符有函数
21、、类和变量。当你为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参 数,它返回当前模块中定义的名称列表。例子:$python import sys dir(sys)#get list of attributes for sys module_displayhook_,_doc_,_excepthook_,_name_,_stderr_,_stdin_,_stdout_,_getframe,api_version,argv,builtin_module_names,byteorder,call_tracing,callstats,copyright,displayhook,
22、exc_clear,exc_info,exc_type,excepthook,exec_prefix,executable,exit,getcheckinterval,getdefaultencoding,getdlopenflags,getfilesystemencoding,getrecursionlimit,getrefcount,hexversion,maxint,maxunicode,meta_path,modules,path,path_hooks,path_importer_cache,platform,prefix,ps1,ps2,setcheckinterval,setdlo
23、penflags,setprofile,setrecursionlimit,settrace,stderr,stdin,stdout,version,version_info,warnoptions2023-1-1520模块模块 数据结构基本上就是它们是可以处理一些 数据 的 结构。或者说,它们是用来存储一组相关数据的。在Python中有三种内建的数据结构列表、元组和字典。我们将会学习如何使用它们,以及它们如何使编程变得简单。列表列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目。假想你有一个购物列表,上面记载着你要买的东西,你就容易理解列表了。只不过在你的
24、购物表上,可能每样东西都独自占有一行,而在Python中,你在每个项目之间用逗号分割。列表中的项目应该包括在方括号中,这样Python就知道你是在指明一个列表。一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是 可变的 数据类型,即这种类型是可以被改变的。例子:2023-1- shoplist=apple,mango,carrot,bananaprint I have,len(shoplist),items to purchase.print These items are:,#Notice the comma at end of the lin
25、efor item in shoplist:print item,print nI also have to buy rice.shoplist.append(rice)print My shopping list is now,shoplistprint I will sort my list nowshoplist.sort()print Sorted shopping list is,shoplistprint The first item I will buy is,shoplist0olditem=shoplist0del shoplist0print I bought the,ol
展开阅读全文