程序设计语言中的瑞士军刀-Python.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计语言中的瑞士军刀-Python.docx

程序设计语言中的瑞士军刀 - Python F1124004 5110309084 蒋舜宁 什么是Python? [1] Python的偏执 程序缩进必须良好,否则不允许编译/解释。 -_-# 语法死板,无法做成Ruby on Rails之类的框架。 但是…… 豆瓣: Ruby on Rails or Python??? Python的设计哲学 “优雅,明确,简单” Python的语法不那么花哨,更具有可读性,支持大规模软件开发。 -Perl: Theres more than one way to do it -Python: There should be one-and preferably only one-obvious way to do it. The Zen of Python: import this Python经常被人拿来比 (1) vs Perl [2] Eric Raymond(一位黑客文化的历史学家以及人类学家) : Perl(1987)是增强的Shell。 Pros:强劲的文本处理能力与正则表达式支持,全套Unix API的内部支持,对C的需求顿减。 Cons:某些部分设计得非常丑陋且无法补救,也过于复杂。当程序规模增大时,必须严格遵守约定,才能保证模块化和设计的可控性,难于维护。 Python经常被人拿来比 (2) Python(1991):与C语言紧密集成的脚本语言。 Pros:干净优雅,代码清晰易读,易学易用;面向对象,但并不强求;出色的模块化特性,同Java一样适合用来做需要协同开发的大型复杂项目。多数情况比Java简单。此外,对许多网络协议支持好,很适合网络管理。 Cons:效率低下,速度缓慢,不仅无法与C/C++竞争,而且也不如其他脚本语言。(注:这问题不严重,有时网络或磁盘的延迟,会完全抵消本身消耗的时间,且性能关键的 Python模块,可以很方便地转化成C语言来提高速度。) Python经常被人拿来比 (3) vs Ruby [3] 语法:Ruby性感,Python质朴。 解释器:Ruby打补丁,Python完善。 应用领域:Python瑞士军刀,Ruby做Web。 第三方包:Python成熟,Ruby有Gem。 某个人的言论 “如果我个人选择的话,会首选用Rails来构建Web应用,再根据情况选择Python或者Java处理一些服务器后端的运算。总之,未来还是一个混合编程的时代,我们需要多了解一些编程工具,然后根据需要看菜吃饭才行。”[3] 范凯,JavaEye技术网站创始人,领导JavaEye网站率先在国内推广Hibernate、Spring开源框架、AJAX技术、敏捷软件开发方法和Ruby on Rails等,在数个技术领域(Java/Ruby/Web...) 都是牛人。 对 SNS的系列大作让人耳目一新。 Python的语言特性 解释执行 动态数据类型 函数定义:def func(): 强制缩进 Python memory manager (引用计数垃圾收集和可选的循环结构垃圾空间扫描技术) Python很慢(1) Python作为解释执行的脚本语言... 你确定你知道该怎么写快? e.g. tmp=x x=y y=tmp x, y=y, x Python很慢(2) S=A+B S.join(A) S.join(B) 当你需要监听一个事件: while True: while 1: Python中的一些函数(1) [4] filter(func, seq):对seq中的item依次执行func (item),将执行结果为true的item组成一个List/String/Tuple(取决于seq的类型)返回。 map(func, seq) :对seq中的item依次执行func (item),将执行结果组成一个List返回。 Lambda: g = lambda x: x * 2  g(3) 6 Python中的一些函数(2) yield def gen():         print ‘let         yield 1         print ‘it         yield 2         print ‘roll’ for i in gen():         print i let 1 it 2 roll Python的实现 [1] Cpython: 通常的Python,完全用C语言实现的最原始的版本。 Jython: Python的纯Java实现;Python源代码可被翻译成在Java虚拟机上运行的Bytecode,而且用户可以从Python访问所有Java库、构建Applet、与Java Bean集成等。 Python for .NET,

文档评论(0)

uqxw + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档