Python与Java对比学习笔记.doc
《Python与Java对比学习笔记.doc》由会员分享,可在线阅读,更多相关《Python与Java对比学习笔记.doc(6页珍藏版)》请在咨信网上搜索。
零基础学Python 第一天 Python简介 Python是一种面向对象、直译式计算机程序设计语言,这种语言的语法简捷而清晰,并且具有丰富和强大的类库。Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。目前稳定的版本是3.3,当时目前使用者还不是很多。我们学习中用到的是2.7。 Python优点 简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。 易学:Python极其容易上手,因为Python有极其简单的语法。 免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。 高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。 可移植性:由于它的开源本质,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、Symbian以及Google基于linux开发的android平台。 解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。 运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行 程序。 在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。 面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。 可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。 可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。 丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。 规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。 Python下载安装 得到所有Python 相关软件最直接的方法就是去访问它的网站(http://python.org)。我们可以选择2.7版本学习。还有一点需要说明的是,学习中的平台是Window。下载Python后安装,我们现以Python自带的IDLE为开发工具。该工具在开始->程序->Python2.7里面。 其他IDE在以后的开发中,我们在自行选择吧。这里就不介绍了。 Python学习 现在打开IDLE开发工具。如下图 1、有没有怀念过“hello world”的时代,现在就感受一下Python的“hello world”,如下图: 是的就是这么简单。一个print后面加个字符串就可以搞定。 2、Python的关键字 and as assert break class continue def del elif else except exec finally for From Global if import in is lambda not or pass print raise return try while with yield None 我想大家都明白针对与关键字就是Python内部的一些定义。在我们的开发中是不允许使用的。你可以通过下面方式的查看Python的关键字。 3、Python标识符定义 Python 标识符字符串规则和其他大部分用C 编写的高级语言相似:第一个字符必须是字母或下划线(_),剩下的字符可以是字母和数字或下划线,大小写敏感。标识符不能以数字开头;除了下划线,其他的符号都不允许使用,也不是你使用关键字。 这里需要注意的一点是: 因为下划线对解释器有特殊的意义,还是建议程序员避免用下划线作为变量名的开始。一般来讲,变量名_xxx被看作是“私有的”,在模块或类外不可以使用。当变量是私有的时候,用_xxx 来表示变量是很好的习惯。因为变量名__xxx__对Python 来说有特殊含义,对于普通的变量应当避免这种命名风格。 4、Python基本语法 4.1、井号(#)表示之后的字符为 Python 注释 顾名思义就是让我们程序员看的,机器是不执行的。 4.2、反斜线 ( \ ) 继续上一行 如果说在写Python代码时,一行语句写不完。我们可以用”\”分解成多行。如下: If(a==1) and \ (b==2): Print “hello” 特殊情况下可以不同”\”,例如在含有小括号、中括号、花括号时可以多行书写。另外就是三引号包括下的字符串也可以跨行书写。在以后的学习总我们还会用到。 4.3、分号 ( ; )将两个语句连接在一行中 编程中你可以多个语句写成一行,语句之间用分号隔开,但是这样会大大降低Python语言的可读性。不建议大家这样写。 4.4、冒号 ( : ) 将代码块的头和体分开 如果遇到像if、while、def 和class 这样的复合语句,首行以关键字开始,应该以冒号( : )结束。 4.5、语句(代码块)用缩进块的方式体现 Python 使用缩进来分隔代码组。代码的层次关系是通过同样深度的空格或制表符缩进体现的。同一代码组的代码行必须严格左对齐(左边有同样多的空格或同样多的制表符),如果不严格遵守这个规则,同一组的代码就可能被当成另一个组,甚至会导致语法错误。 注意:对一个初次使用空白字符作为代码块分界的人来说,遇到的第一个问题是:缩进多大宽度才合适?两个太少,六到八个又太多,因此我们推荐使用四个空格宽度。需要说明一点,不同的文本编辑器中制表符代表的空白宽度不一,如果你的代码要跨平台应用,或者会被不同的编辑器读写, 建议你不要使用制表符。 使用空格或制表符这两种风格都得到了Python创始人Guido van Rossum 的支持,并被收录到 Python 代码风格指南文档。 4.6、模块 每一个 Python 脚本文件都可以被当成是一个模块。模块以磁盘文件的形式存在。当一个模块变得过大,并且驱动了太多功能的话,就应该考虑拆一些代码出来另外建一个模块。模块里的代码可以是一段直接执行的脚本,也可以是一堆类似库函数的代码,从而可以被别的模块导入(import)调用。 第二天 Python如何赋值,定义变量。 第一天中我们已经介绍了标识符的定义格式。现在就来定义几个变量吧。 isInt = -12 isString = 'cart' isFloat = 3.1*2 如果是Java语言该如何定义呢,每一个变量都需要指定类型。 Int isInt = -12; String isString = “cart”; Float isFloat = 3.1*2; 而Python的变量什么类型呢,这个类型是有Python动态判断的。比如isInt就是int类型。如何查看定义的变量是什么类型呢,我们可以用type(isInt),type(isString)查看。如下图: 目前Python还不支持char和byte Python的类型 标准类型 l 数字 l 整型 l 布尔型 l 长整型 l 浮点型 l 复数型 l 字符串 l 列表 l 元组 l 字典 内建类型 l 类型 l Null 对象 (None) l 文件 l 集合/固定集合 l 函数/方法 l 模块 l 类 现在特殊说下“内建类型”的类型。通俗一点讲所有的类型都是类型。不管是整形还是字符串还是列表或者类,要问它们的类型是什么,它们的类型是类型。不知道这么说你糊涂了,就好像是绕口令似的。下面大家看看代码可能会明白些。 现在明白了吗,int的类型是type,type的本身的类型还是type,也就是type是Python的根。 Python有一个特殊的类型, 被称作 Null 对象或者 NoneType, 它只有一个值, 那就是 None。它不支持任何运算也没有任何内建方法。如果非常熟悉 C 语言,和 None 类型最接近的 C 类型就是 void,None 类型的值和 C 的 NULL 值非常相似(其他类似的对象和值包括 Perl 的 undef 和Java 的 void 类型与 null 值) 。 None 没有什么有用的属性,它的布尔值总是 False。 对于Pyth语言所有的对象都可以用布尔值描述 所有标准对象均可用于布尔测试,同类型的对象之间可以比较大小。每个对象天生具有布 尔 True 或 False 值。空对象、值为零的任何数字或者 Null 对象 None 的布尔值都是 False。 下列对象的布尔值是 False。 l None l False (布尔类型) l 所有的值为零的数: Edit By Vheavens l Edit By Vheavens l 0 (整型) l 0.0(浮点型) l 0L (长整型) l 0.0+0.0j (复数) l "" (空字符串) l [] (空列表) l () (空元组) l {} (空字典) 值不是上面列出来的任何值的对象的布尔值都是 True, 例如 non-empty、 non-zero 等等。 用户创建的类实例如果定义了 nonzero(__nonzero__())或 length(__len__())且值为 0,那 么它们的布尔值就是 False。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python Java 对比 学习 笔记
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文