欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Python-基础知识.ppt

    • 资源ID:5445783       资源大小:482KB        全文页数:46页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Python-基础知识.ppt

    第1章基础知识,1,课程概要,主要内容:基础知识数据结构字符串与正则表达式函数面向对象程序设计文件和异常处理GUI编程数据库编程多媒体编程教材:董付国,Python程序设计,清华大学出版社Magnus Lie Hetland,Python基础教程,人民邮电出版社Mark Lutz,Python学习手册,机械工业出版社,2,1.1 Python是一种怎样的语言,Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。,Python命名是因为他是一个叫Monty Python的喜剧团体的爱好者。,3,1.1 Python是一种怎样的语言,跨平台和兼容性非常好,可运行在多种计算机平台和操作系统中,如各位unix,windows,MacOS,OS/2等等自动内存回收。这个特点使得程序员在编程的时候,可以不考虑程序运行中的内存管理,而专注于自己的逻辑处理。面向对象特性(object_oriented Programming)。,4,1.1 Python是一种怎样的语言,强大的动态数据类型支持,不同数据类型相加会引发一个异常。强大的类库支持,使编写文件处理、正则表达式,网络连接等程序变得相当容易。Python的交互命令行模块能方便地进行小代码调试和学习。Python易于扩展,可以通过C或C+编写的模块进行功能扩展。系统编程,提供大量系统接口API,能方便进行系统维护和管理。图形处理,有PIL、Tkinter等图形库支持,能方便进行图形处理。数学处理,NumPy扩展提供大量与许多标准数学库的接口。文本处理,Python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用Python进行XML程序的开发。数据库编程,程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server、Oracle、Sybase、DB2、Mysql等数据库通信。Python自带有一个Gadfly模块,提供了一个完整的SQL环境。,5,6,作为Web应用的开发语言,支持最新的XML技术。近年来随着游戏产业的兴起,Python开始越来越多的涉足游戏领域。Pygame是Python开发游戏的一个库,关于Pygame具体可参考网站。,1.1 Python是一种怎样的语言,1.2 Python编辑与运行环境,下载和安装Python http:/运行Python GUI:1.命令提示符下 C:Python27 helloworld.py2.默认编程环境IDLE(Integrated Development Environment)import helloworld 注:紫色的符号是一些方法,橘红色一般是关键字,绿色是文本,红色是注释部分,剩下的就是黑色了3.Python(command line)import helloworld,其他可选开发环境:wxPython、Jython、Cython,7,1.2 Python编辑与运行环境,查看已安装版本的方法(在所启动的IDLE界面也可以直接看到):import sys sys.version常用快捷键:Alt+P、Alt+N:浏览历史命令Ctrl+F6:重启Shell,之前定义的对象全部无效F1:打开Python帮助文档Ctrl+、Ctrl+:缩进代码Alt+3、Alt+4:注释、取消注释,8,关于Python的资源中文的简明Python教程挑战智商的Python在线测试:编程趣味学习网站http:/,1.2 Python编辑与运行环境,9,1.3 Python基础知识1.3.1 Python的对象模型,对象是python语言中最基本的概念,在python中处理的每样东西都是对象。python中有许多内置对象可供编程者使用,内置对象可直接使用,如数字、字符串、列表、del等;非内置对象需要导入模块才能使用,如正弦函数sin(x),随机数产生函数random()等。,10,1.3.1 Python的对象模型,常用内置对象,11,1.3.2 python的变量和引用,1.变量的创建 x=3 创建了变量x,不需要提前声明变量 a,b=3,5 a,b=b,a2.引用 在python中从变量到对象的连接称为引用。x=3变量拥有自己的存储空间,变量连接到对象是该变量存储了对象单元的内存地址,并没有存储对象的值。,12,1.3.2 python的变量和引用,3.共享引用 共享引用是指多个变量引用同一个对象。下面的语句使两个变量都引用同一个对象3a=3b=a使用id函数可以查看对象的内存地址4.垃圾回收机制 对于没有任何变量指向的值,Python自动将其删除。Python跟踪所有的值,并自动删除不再有变量指向的值。,13,1.3.2 python的变量和引用,14,5.内存管理机制(1)垃圾回收(2)引用计数(3)内存池机制,当申请的内存小于256字节时会在内存池中申请内存;当申请的内存大于256字节时,使用malloc申请内存。,1.3.2 python的变量和引用,5.对象类型的动态的,强类型 a=3 type(a)a=4 type(a)a=3,5 type(a)a=1,2,3 type(a),15,1.3.2 python的变量和引用,6.变量命名以字母或下划线(有特殊含义)开头变量名中不能有空格以及标点符号(括号、引号、逗号、斜线、反斜线、冒号、句号、问号等等)不要使用关键字(在keyword模块中)作变量名 import keyword keyword.kwlist不要使用系统内置的模块名或函数名(可以通过dir(_builtins_)查看变量名大小写敏感,16,1.3.3 数字,数字是python中最常用的对象,属于不可变对象。可以表示任意大小的数字。a=99999999999999999999999999999999 a*a9999999999999999999999999999999800000000000000000000000000000001L a*3999999999999999999999999999999970000000000000000000000000000000299999999999999999999999999999999LPython的IDEL交互界面可以当做简便计算器来使用。,17,1.3.3 数字,1.4.3.1 整数十进制整数如,0、-1、9、123十六进制整数,需要16个数字0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f来表示整数,必须以0 x开头,如0 x10、0 xfa、0 xabcdef八进制整数,只需要8个数字0、1、2、3、4、5、6、7来表示整数,必须以0o开头,如0o35、0o11二进制整数、只需要2个数字0、1来表示整数,必须以0b开头如,0b101、0b100,18,1.3.3 数字,1.4.3.2 浮点数浮点数又称小数,15.0、0.37、-11.2、1.2e2、314.15e-2,19,1.3.3 数字,1.4.3.3 复数Python中的复数与数学上的复数一致,由实部和虚部构成,并且使用j或J来表示虚部。a=3+4jb=5+6jc=a+bc8+10j c.real#复数的实部8.0 c.imag#复数的虚部10.0 a.conjugate()(3-4j),20,1.3.4 字符串,用单引号、双引号或三引号括起来的符号系列称为字符串单引号、双引号、三单引号、三双引号可以互相嵌套,用来表示复杂字符串。abc、123、中国、Python字符串属于不可变序列 空串表示为或 三引号或表示的字符串可以换行,支持排版较为复杂的字符串;三引号还可以在程序中表示较长的注释。,21,1.3.4 字符串,1.字符串合并 a=abc+123#生成新对象2.字符串格式化 把对象按格式要求转换为字符串。a=3.6674%7.3f%a#或者直接使用str(a)3.667,22,1.3.4 字符串,3.转义字符n:换行符t:制表符r:回车:单引号”:双引号:一个ddd:3位八进制数对应的字符xhh:2位十六进制数对应的字符 注:字符串界定符前面加字母r表示原始字符串,其中的特殊字符不进行转义,但字符串的最后一个字符不能是。,23,1.3.5 操作符和表达式,24,1.3.6 常用内置函数,内置函数不需要导入任何模块即可使用执行下面的命令可以列出所有内置函数 dir(_builtins_),25,1.4.6 常用内置函数,26,1.3.6 常用内置函数,27,1.3.7 对象的删除,Python中删除对象用del语句。del用来删除一个对象,并释放对象所占资源。del的用法演示如下:a=1,2,3del a1a1,3x=5x5del x#此后x就不存在了,28,1.3.8 基本输入输出,用Python进行程序设计,输入是通过input()函数来实现的,imput()的一般格式为:x=input(提示:)该函数返回输入的对象。可输入数字、字符串和其它任意类型对象。,29,1.3.8 基本输入输出,输出是通过print语句来完成的,print语句的一般格式为:print 对象1,对象2,.,对象n在Python3中,print是函数,而不是语句。,在Python中进行重定向输出的用法:fp=open(rc:mytest.txt,a+)print fp,Hello,world fp.close(),30,1.3.9 模块的使用,Python默认安装仅包含部分基本或核心模块,但用户可以安装大量的扩展模块。在Python启动时,仅加载了很少的一部分模块,在需要时由程序员显式地加载(可能需要先安装)其他模块。减小运行的压力,仅加载真正需要的模块和功能,且具有很强的可扩展性。,31,1.3.9 模块的使用,import 模块名import mathmath.sin(0.5)#求0.5的正弦import randomx=random.random()#获得0,1)内的随机小数y=random.random()n=random.randint(1,100)#获得1,100上的随机整数可以使用dir函数查看任意模块中所有的对象列表,如果调用不带参数的dir()函数,则返回当前脚本的所有名字列表。可以使用help函数查看任意模块或函数的使用帮助。,32,1.3.9 模块的使用,from math import sin#可以减少查询次数,提高执行速度from math import*#谨慎使用 from math import sin sin(3)from math import sin as f#别名 f(3),33,1.3.9 模块的使用,可以使用sys.modules.items()显示所有预加载模块的相关信息在2.x中可以使用reload函数重新导入一个模块,在3.x中,需要使用imp模块的reload函数Python首先在当前目录中查找需要导入的模块文件,如果没有找到则从sys模块的path变量所指定的目录中查找。可以使用sys模块的path变量查看python导入模块时搜索模块的路径,也可以向其中append自定义的目录以扩展搜索路径。在导入模块时,会优先导入相应的pyc文件,如果相应的pyc文件与py文件时间不相符,则导入py文件并重新编译该模块。,34,1.3.9 模块的使用,ossysmathLocale:提供了C语言本地化函数的接口,并提供相关函数实现基于当前locale设置的数字与字符串转换randomstructpickle:序列化datetimetimewmi:需安装tkinter:GUI开发urllib/urllib2:网页编程Pygame:游戏开发tkinter、wxPython:GUI编程SciPy:科学计算PIL:图像处理fabric:远程操作与部署,capstone:反汇编框架ropper:ROP相关框架IDAPython:IDA插件,Yara:恶意软件识别与分类引擎,35,1.4 Python代码规范,(1)缩进类定义、函数定义、选择结构、循环结构,行尾的冒号表示缩进的开始 python程序是依靠代码块的缩进来体现代码之间的逻辑关系的,缩进结束就表示一个代码块结束了。同一个级别的代码块的缩进量必须相同。一般而言,以4个空格为基本缩进单位。,36,1.4 Python代码规范,(2)注释一个好的、可读性强的程序一般包含30%以上的注释。常用的注释方式主要有两种:以#开始,表示本行#之后的内容为注释 包含在一对三引号之间且不属于任何语句的内容将被解释器认为是注释,37,1.4 Python代码规范,(3)每个import只导入一个模块(4)如果一行语句太长,可以在行尾加上来换行分成多行,但是更建议使用括号来包含多行内容。(5)必要的空格与空行运算符两侧、函数参数之间、逗号两侧建议使用空格分开。不同功能的代码块之间、不同的函数定义之间建议增加一个空行以增加可读性。(6)适当使用异常处理结构进行容错,后面将详细讲解。(7)软件应具有较强的可测试性,测试与开发齐头并进,后面将详细讲解。,38,1.5 Python文件名,.py:Python源文件.pyc:Python字节码文件。对于Python模块,第一次被导入时将被编译成字节码的形式,以提高脚本的启动速度。对于非模块文件,直接执行时并不生成pyc文件,可以使用py_compile模块的compile函数进行编译。.pyo:优化的Python字节码文件。可以使用”python O file.py”或”python OO file.py”进行优化编译。,39,1.6 Python程序的运行方式,每个Python脚本在运行时都有一个_name_属性。如果脚本作为模块被导入,则其_name_属性被设置为模块名;如果脚本独立运行,则其_name_属性被设置为_main_。,40,1.7 编写自己的包与模块,包可以看做处于同一目录中的模块。在包的每个目录中都必须包含一个_init_.py文件,该文件可以是一个空文件,仅用于表示该目录是一个包。_init_.py文件的主要用途是设置_all_变量以及所包含的包初始化所需的代码。其中_all_变量中定义的对象可以在使用from import*时全部正确导入。,41,1.8 Python快速入门,问题1:用户输入一个三位自然数,计算并输出其佰位、十位和个位上的数字。x=input(请输入一个三位数:)a=x/100b=x/10%10#或 b=x%100/10c=x-100*a-10*b#或c=x%10print a,b,c,42,1.8 Python快速入门,问题2:已知三角形的两边长及其夹角,求第三边长。import mathx=input(输入两边及夹角(度):)a,b,sita=xc=math.sqrt(a*2+b*2-2*a*b*math.cos(sita*math.pi/180)print c=,c,43,1.8 Python快速入门,上面的代码也可以写成这样,虽然减少了需要输入的代码,但一般不建议这样做:from math import*x=input(输入两边及夹角(度):)a,b,sita=xc=sqrt(a*2+b*2-2*a*b*cos(sita*pi/180)print c=,c,44,1.8 Python快速入门,这样就可以了:from math import sqrtx=input(输入两边及夹角(度):)a,b,sita=xc=sqrt(a*2+b*2-2*a*b*cos(sita*pi/180)print c=,c,45,1.8 Python快速入门,问题3:任意输入三个英文单词,按字典顺序输出。s=input(x,y,z=)x,y,z=s.split(,)if x y:x,y=y,x if x z:x,z=z,xif y z:y,z=z,yprint(x,y,z),46,

    注意事项

    本文(Python-基础知识.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开