我的大学网
我的大学网

设为首页
加入收藏
联系我们

  首页    论坛   首页   首页   首页   首页  
大学男生 | 大学女生 | 菁菁校园 | 男生女生 | 奇闻趣事 | 求职&上班族 | 毕业&综合 | 考研考试 | 生活保健 | 理工& 电脑 | 人文&外语 | 网络资源 | 心灵之窗 | 资讯 | 时评&七嘴八舌 | 资料中心 | 爱情摩天轮
   
 
 
   
.  
 
.
 
 
您当前的位置:我的大学网 -> 理工& 电脑 -> 文章内容  
广告位
栏目导航
  • · 大学男生
  • · 大学女生
  • · 菁菁校园
  • · 男生女生
  • · 奇闻趣事
  • · 求职&上班族
  • · 毕业&综合
  • · 考研考试
  • · 生活保健
  • · 理工& 电脑
  • · 人文&外语
  • · 网络资源
  • · 心灵之窗
  • · 资讯
  • · 时评&七嘴八舌
  • · 资料中心
  • · 爱情摩天轮
  • · 吃喝玩乐
  • · 星座命理
  • · 视频分享
  • · 女性
  • · 待处理
  • · 影音娱乐
  • · 更多分类
  • zhouzeng我的大学网: www.zhouzeng.com.cn
    热力推荐
    我的大学网: www.zhouzeng.com.cn
    完全用Python工作---Harness the power of Python
    作者:www.zhouzeng.com.cn  来源:我的大学网  发布时间:2013-04-04 04:16:11  发布人:admin

    减小字体 增大字体

    sogou

    第一天, 太初有道, 神谕, import light, 于是便有光.

    (Quick fact: 在python解释器里输入import antigravity有彩蛋)

    作为一个业余物理工作者以及入门计算机使用者, 选择一门称手的编程语言是非常重要的事. 从计算能带, 处理数据, 编写脚本到画图, 写个http服务器分享文件 (看上去很专业,实际在Python里只有一行), 做个网页, 几乎全部需要计算机完成. 但是为了这其中每个不同的目的单独去学一门语言成本简直过于高, 于是需要一个一般用途(general-purpose)的语言,处理所有的事是非常自然的事情.

    编程语言的两极是Assembly和Haskell, 一个接近硬件的本质, 一个接近计算的本质. 一个是地狱, 处理着最繁琐最耗神的事情:内存分配, 系统调度, 硬件架构, 各种寄存器A1, B2... 一个是天堂, 优美的写着递归, 高阶函数, lambda表达式, 优美的并行计算(完全不用考虑race condition). 然而我们生活在人间, 所以大规模应用的语言不可能如此纯粹. 两端中间游离着很多general-purpose的语言, C, C++, Java, Ruby, 几乎都能达到我们所有日常的要求. 只不过,这些语言能做的Python都能做,而且Python做得更好。接下来我说明为什么。但是要说明本文的读者不包括写嵌入式,写javascript以及写大型项目对性能要求极高的人(即使是大型项目也可以80%用python,20%用C),当然还有就是java和C++的重度患者。(完全使用XX工作意思不是"所有人都完全使用XX工作”!显然只是部分人。更多的是,非专业编程但是想提高效率的人。比如之前有篇<完全使用*nix工作>,C#,ios开发的人显然就一下也不能用。对于我,linux再好我也只能装在老电脑上交交CS225的作业。当我把mint, opensuse, archlinux装遍了,下一步就是gentoo了的时候,否决它只有一条理由,我笔记本电池不经用,而桌面linux的电源管理...... 感谢我的cpu风扇~!)

    首先,我想说的是,为什么不用下面这些大部分人很熟悉的语言:

    1. C: 你难道指针扎得不疼么? 每天收垃圾很舒服? 键盘上P右边两个键是不是已经按坏了?

    2. C++: 学C++三年以内请不要说你会C++; 学了三年以上的人, 恭喜你们, 你过去几年浪费的时间我可以拿着香飘飘环绕地球一圈了.

    3. Java: 不好意思, Java的面向对象对我来说是原子弹打原子。 而且Java7才引进Lambda表达式实在是太晚了, 即使java以后会跟python越来越像, 至于支持真正的函数式编程? 我希望下个末日之前可以实现. 而且有时候我确实需要单行执行的解释器而Java并没有。

    4. Ruby: Ruby很好,但是你为什么不直接说你只是为了用RoR?

    5. Lisp: 如果你用lisp, 你平时肯定会用python或者perl写脚本。 而且你会Lisp不去拯救世界还来看这篇文章干什么?! 抽象语法树什么的最讨厌了....

    6. Perl: 我第一次看Perl的代码就感觉像用脚写的. "为什么满屏的正则表达式?"!

    7. C#, php, javascript:呵呵。

    8. Shell: 这算语言么?

    9. Matlab: 第一,我穷酸学生没钱每年买你的正版, 看到激活码就想吐。 第二,我不想心血来潮画两个心形函数的时候用1mb的窄带花两天下个5.03Gb的文件在我128Gb的固态硬盘里装,然后用完两个小时就删,如此循环。 第三,我会python了不想再花时间学你的sb语法,熟悉你的.m文件。第四,所有对windows的垄断的血泪控诉都直接对mathwork转过来吧~什么对开源,对自由,对的打击信仰~绝对适用~ 第五,python大部分时候如果不比你好用至少跟你一样好用,而这只是它不到10%的功能,几个程序员业余时间写出来的库。真心请matlab你这个没事发邮件“培训一个星期2000刀打折700刀”的大公司滚粗。

    10. Haskell: 每次想静下心来学haskell 都会情不自禁从范畴论看起....

    对于单纯程序语言的使用者来说,用途(内在逻辑)大于一切不必要的语言细节。比如我就想建个数组放东西,为什么我要懂内存回收?!

    所以在易用性方面,Python相对于他们作了很大改进的部分。

    好吧,你会说Python没有缺点么。确实有,而且很严重,那就是运行慢。而且是慢出风格,慢出自信。(Python 3比Python 2 慢 15%以上, 这是一种什么风格!)相同的程序Python比C慢几百倍很正常。这让Python的发展受到很多限制。但是对于个人使用来说这个缺点完全不属于缺点。第一,这个年代谁没有奔腾酷睿2什么的。你手机的运行能力都可以几毫秒内把你在厕所拍的几千张自拍液化,磨皮,磨骨好几遍了。而且你觉得0.01秒和0.5秒的区别真的那么大么?12秒也不是很久啊。第二,很大程度上程序的慢更关乎于算法,比起O(n)和O(n^2)的区别, 语言间的差异就显得很小了,第三,请注意,如果你使用过Python而且真实的觉得Python慢,那么情看下这个列表:

    1. Google创立前的第一个网络爬虫。

    2. Quora,美国最大在线知识问答平台,开复哥总是在上面拽文的。

    3. Dropbox。

    4. Youtube

    5. BT。

    6. 知乎,中国的Quora。

    7. 豆瓣,开创社交工具绿色系代表yp的先河。

    你知道我要说什么了。.....恩~他们有一个共同点~ ------------ 都是Python写的!如果tmd的Dropbox没有觉得Python慢,请你也有足够的信心不要觉得Python慢。另外八卦一下,现在Python之父前两天从google去Dropbox了,这是很值得自豪的事, 值得Dropbox为之自豪。

    Python是荷兰人van Rossum1991年开发完成的脚本解释语言。起这个脑缺的名字是因为他是一个叫做Monty Python的脑缺喜剧团体的脑残粉(BTW,Monty Python出演的巨蟒与圣杯是英国电影史上跟大话西游同样地位的喜剧,其中亚瑟王被黑成了炭,里面圆桌骑士们拿着块石头敲来敲去各处蹦达着,看影评我才知道这是表示他们在骑马%&……×(). 于是人们知道以这么脑残的名字取的语言不是像brainfuck语言一样是brainfucker,那么就会像莫里盖尔曼以乔伊斯“芬尼根的守夜人”中虚构名词来命名的夸克一样,成为一个一个不朽的新创造。Python显然属于后者。

    接下来,说正题,为什么Python如此先进(对于初学者)。

    代码简洁性和可读性

    写过hello world,hello android, hello **的人都知道,学语言最好的途径就是写和读(即使是学书面的自然语言)。所以代码的可读性是选择学一门语言的关键因素,因为你代以后会花很多时间读别人的代码。可读性带来的影响是非常深远的。有种说法, 说在

    [1] [2] [3]  下一页

    [ ] [返回上一页] [ 打 印] [收 藏]
    上一篇文章:
    下一篇文章:
          同学几个玩游戏模仿动物叫声 在模仿了二三十种以后 大家都想不出了 正在大家苦思冥想时 突然有人说 穿山甲 众人不解忙问 穿山甲如何叫 那人答道 爷爷 爷爷! 哈哈哈哈哈 我会告诉你那人是我吗?!】       一屁股坐在了我养了五年的仙人球上面。。。
    ∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
     
     
     
    完全用Python工作---Harness the power of Python 大学男生|大学女生|男生女生|校园|求职考试|奇闻趣事|考研|生活|计算机学院|小说天地|高考|网络游戏|实用信息|爱情|感动|熟悉的陌生人|情侣|恋爱|大学生门户网站|大学生必上网站
    sogou
    友情链接:   论坛  数据大学 首页   首页   首页   首页   首页   首页  首页  首页                                                
    Copyright © 2007-2010 顶部. All Rights Reserved .

    湘ICP备07501844号

    关于本站 - 网站帮助 - 广告合作(QQ联系) - 友情连接 - 网站地图 - 管理登录