西西河

主题:庆祝Python跃居世界第四程序语言 -- 空格

共:💬100 🌺284
分页树展主题 · 全看首页 上页
/ 7
下页 末页
  • 家园 庆祝Python跃居世界第四程序语言

    咳咳,标题党一下。

    在今年2 月的TIOBE最新世界程序语言排名中。python所占的比例史无前例地跨越了7.0%大关。达到7.038%。在世界程序语言中的排名也历史性地达到了第四位。仅在Java,C,C++,之后。

    这是python语言自出生以来的最高记录。历史上python只在04年因为TIOBE修改排名规则而一度达到超过6.5%的使用率。不过,纵观python这几年来的成绩。仍是稳步上升的。

    python取得这样的成绩是与这种语言的优秀特点分不开的,[][][](此处省略赞美python语言若干字,Perl党、PHP党和Ruby党不要扁我)。

    拍松(python)语言有前途哈。


    本帖一共被 1 帖 引用 (帖内工具实现)
    • 家园 借地求助一下

      用了多年SQL,SAS,知道在很多人眼里,这简直不能算门语言。不管怎样,最近开始接触Python,试着从teradata抓数据。

      抓下来的是个teradata的object,不知道怎么继续分析,能不能在python里面做一些类SQL的东西。Google一下没有头绪。

      多谢

      • 家园 python有多种SQL的接口

        MySQL,postgreSQL都有。或者还可以用一个叫SQLite的内置轻量级数据库。

        • 家园 多谢

          我已经可以把数据抓下来了。但是下一步怎么进一步分析,操作呢?

          比如说我从数据库抓下来两个表,怎么可以在这两个之间进行一些类似SQL的操作,计算?比如teradata的object,有SQL,SAS的function吗,有办法转成可操作的object吗?

          • 多谢
            家园 python的MySQL接口里好像有

            有直接执行SQL语句的函数。具体是什么我不记得了。您还是自己查查吧。

            如果您对SQL熟悉的话可以这样做:在python里调用SQL。不然的话,您可以用python的包来实现。楼上那位说的pandas是好东西。或者用numpy和scipy里的各种数学计算包也可以用。我做统计一直是用scipy.stats算的。

          • 多谢
            家园 pandas,谁用谁知道
    • 家园 时隔五年,我大python重回世界第四

      4.429%的占有率。还算可以吧。

      道阻且长,与共徘桑。

    • 家园 同好顶一个
    • 家园 python 确实不错

      去年开始,给公司开发一套自动测试的framework,当时由我自己决定选择哪种语言。

      本来在python和ruby之间选一个。我决定选择python,虽然之前没有用过。但是一年用了下来,确实比较顺手。

      • 家园 您也是做开发的?

        原来是同行。

        当年我也做过一套自动测试系统来测公司的compiler,用随机漫步的方法,自动生成程序,给compiler去compile,然后看出来的结果是否正确。

      • 家园 井大能抽空普及下外汇知识吗

        井大,请教下外汇市场上瑞士法郎、美元、欧元之间是什么关系呀

        看趋势,瑞士法郎和欧元应该大的趋势是一直的呀,但从去年下半年开始看不懂了,欧元跌,瑞士法郎不跌呀。难道真的是因为瑞士是中立国,货币和黄金一样保值??

      • 家园 井大竟然跟我最近做的工作一样

        我凌乱了,凌乱了。。。

        真没想到

    • 家园 看完回帖说两句,说的不好,欢迎送草

      一口气看完了所有的回帖,做为一个天天跟汇编,C/C++较劲,并且只用过PHP的程序员,我也谈点感想。感想挺多,统一回复在楼主贴下面,希望楼主不要介意。

      我觉得,任何一种语言都有自己的特性,语言之间没什么可比性。飞机快,也没取代汽车;汽车快也没取代自行车。一个语言的出现,实际上是语言作者为了满足某种需求而开发,经过社区的力量,或商业推广发展壮大。

      C++确实是个有争议的语言,从它出现的那天起就没消停过,C和C++争论过,java和C++也争论过。

      脚本语言的优势是易于学习,易于使用,抱着本书一个星期就可以进项目开发,支持库也多,开发人员只需要把精力放到功能逻辑的实现,其他的就交给支持库来完成即可。程序搞定之后,想放哪个平台上就放哪个平台上,只要解析器、虚拟机支持,可以让写好的程序跑在咖啡机里。

      如果是从事系统级别的开发,想用脚本语言实现点功能是门都没有;但是搞WEB应用,死抱着C/C++来干,那真是有点拙死。处理一个HTTP请求的数据包就够喝一壶。

      有人说C++的语法功能太搓了,用起来很别扭,学起来太费劲,但是我感觉实际情况是,任何一种语言,要完全掌握语言特性,基本都需要一年的学习实践时间,C++和PHP相比,C++的入门难度大,PHP入门简单一些罢了。C++的难度体现在它的灵活,而真正的大师,正是那些能灵活运用语言特性写出一些让人无法理解,但是在跟踪调试之后令人感觉到心旷神怡的代码的人。

      所以说,就按照需求选择语言,大型的跨平台应用,可以用java,python。别跟某某语言过不去,语言是死的,人是活的。如果项目非要用C/C++写跨平台的代码,那就努力写出高质量的代码,要么就把ISO的人给做了。至少ISO的人不是什么白痴,最恨他们的应该是编译器的作者。

      再说说OOP的事情,我感觉这就是个思想性的东西,和语言无关,语言支持不支持并不重要,有这个思想,面向过程的语言一样可以按照OOP的思想来实现产品,Windows内核就是很经典的例子。即使不使用OOP照样也可以实现功能,和这个那个思想比起来,优秀的框架设计,良好的代码风格和充分的注释,以及功能实现的设计文档才是最重要的。说句良心话,一个版本的实现,时间花费最大的地方是调试和测试。

      语言就是语言,现在的应用是越来越庞大,无论C++还是PHP,实现一个应用代码量基本差不多,西西河这样一套系统,至少也得有个10万行以上的代码量。就功能而言,语言对功能影响是比较小的,分配内存,释放内存能占多少行代码?那就是一个细心的问题,对于一个习惯使用C/C++的程序员来说,绝对不会认为这是一个诟病。

      我觉得专注事务处理应该是语言发展的趋势,比如在企业应用整合和大型ERP系统中,事务过程处理的语言是脚本语言所无法比拟的。当然,效率也是要考虑的,不能因为硬件发展了,效率就忽略了。

      脚本语言的一个问题是版本混乱,一开始是一个样子,之后添加特性过多,反而没了特点。版本间功能不兼容,特性不支持,对于生产环境来说,稳定才是最重要的,不到万不得已不会随随便便更新生产环境的配置。至少C++还能用个extern "C"保证编译后函数命名的统一,脚本语言用什么保证向下的兼容性统一呢?

      安全是脚本语言面临的另外一个问题,看看各种脚本语言发布的release,都会有安全缺陷的修正,对于稳定第一的生产环境来说,某些安全缺陷可以是致命的。另外一方面,脚本语言基本是源码,即便是那种可以生成二进制中间码的也都很容易被逆向出源代码,保护源代码就是一个问题。C/C++这样的程序,很容易保护,有各种各样的加密加壳程序,相对于脚本语言,逆向起来没有点技术水平是比较困难。

      啥事都有好坏两方面,就看个人选择了,喜欢一门语言就跟恋爱一样。和版本功能实现,代码维护管理相比而言,语言之间的比较真就是浮云。。。

      关键词(Tags): #C++#脚本语言通宝推:红茶冰,铁手,
      • 家园 语言发展的趋势要与大势一致,给您补充几句

        我觉得专注事务处理应该是语言发展的趋势,比如在企业应用整合和大型ERP系统中,事务过程处理的语言是脚本语言所无法比拟的。当然,效率也是要考虑的,不能因为硬件发展了,效率就忽略了。

        ------

        1.IT发展的大势是硬件从pc向更为小巧的smartphone, Iot设备发展。

        这个时候,注重效率,小型化的小软件就有优势了。最近用android编了点小程序,用到的语言就是c,而有个同事参与了个俄罗斯发的os的开源系统开发,整个系统只有8k,就是面向这些只能系统的。

        2.海量数据,尤其有从互联网数据向物联网数据蔓延。

        R语言有很多关于统计方面的特性。觉得会是下一代王者。

分页树展主题 · 全看首页 上页
/ 7
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河