前言

近些年,大数据下的人工智能应用,以其黑科技姿态,不知亮瞎了多少百姓的眼睛。一时间“AI自动编码颠覆世界,不上车将永被放逐”的言论喧嚣尘上,大街小巷里的男女老少,都拍着小手,欢呼着“人生苦短,我写Python”。无良的教培机构贩卖保健品一般,将Python神化的无所不能。诚如网友所说,让每种工具回归其主场,才是最起码的尊重。这与笔者致力于,分享非IT适用的技术框架的初衷,如出一辙。所以,本篇决定来拾掇拾掇Python,权当是给语言论者泼盆冷水。

一、Python的本质是语言的语言

撕开Python语法的优雅,在其高贵华丽的外衣下,除了轮子还是轮子。一个满身轮子的货,当然可以到处滚了。吃得开,这是其他语言没法比的。在C面前有Cython,在R面前有rpy2,在JAVA面前有JPype等,几乎所有语言的资源,Python都有对应的库。Python被称为胶水,这不是盖的。

Python通过各种库来干活,但各种库的实现其实跟Python没多大关系,实际上Python自己干的活很少。如果没有其他语言的资源,Python还能如此优雅?还能号称区区几行就搞定别人成百上千行?所以,Python的本质是如何利用资源,这与VBS的本质其实并无多大差别,只是前者做的更优秀而已。

我们都知道,解释型语言的性能,都是建立在编译的基础上。Python要没有C为其兜住性能,Python就不会有今天的炙手可热。从这点也说明Python其实并不是一种纯粹的高性能开发工具,它更像是武器库的控制台。

所以,代码大佬们会衷心的告诉你,Python其实是为经验丰富的开发人员准备的。因为他们才知道,资源如何组装才更合理。Pyhon作为语言的语言,更多的意义在于资源的组织管理,而非资源的生产。

二、Python的主场落在大数据时代的专业分工

语言的语言,这种胶水特性并非Python独有,几乎所有可扩展的开发工具都含有这一特性。但为何大数据之后,Python的号角才开始嘹亮呢?在《互联的围城,已春暖花开,我却心向罗盘荒野》中,笔者向读者道出了原因,那就是大数据挣脱了01的呆笨逻辑,向世人揭示出了尿不湿与啤酒间,人的逻辑。

在大数据中搜寻这种逻辑,促就了数字世界的淘金热,更催生出了互联网AI这个全新的物种。但数据分析,毕竟大大超出了程序员职业的能力范畴。尽管不乏精通代码算法和数据分析算法的人才,但就这一职业而言,仍然需要将数据分析这一工作拆解出来,让给数据精英们。

Python的跨平台胶水属性,简直就是为大数据的分工,而量身定做的一般。无需学习算法的底层实现,而专注于算法本身,这与数据科学家们一拍即合。让专业的人干专业的事,是Python重回人们视野的根本。在大数据和人工智能的加持下,Python傲骄得今天让你爱理不理,明天叫你高攀不起。

三、Python对于初学者的意义不如VB,也注定不属于普通人

站在前人的肩膀上,不做轮子哥,这是每个开发工具的共同理想。Python并不排斥小白先生,在那么多类库资源的诱惑下,初学者抵挡不住也无可厚非。毕竟当前是一个短视遍野的社会,能速成何必修身。

尽管Python在库的支持下,很有捷径可走,而且这跟跟VB用鼠标画界面并没有什么不同,都是封装带来的。但对于初学者而言, Python却暗藏杀机。在它优雅的语法下,Python似乎可以按着摩擦任何其他语言,这让很多初学者误以为,Python太牛了,纷纷欲以为业,加入Python的大军之中。

但很多初学者看不到的是,Python耀眼光环的背后,往往都是些知名高等学府里那些精通数学的硕士、博士,在他们的周围,还有一圈配套的性能层。也就是说,Python从来都不干单打独斗的事。恰恰这种环境,是初学者难以具备的。所以,很多人学了4个月Python找了3年的工作。

Python的这种简单强大,叫分工,有上下文环境。如果分工里没有你的份,再简单强大,也是屠龙术。而VB的简单,叫包容,许你3%,也容你97%。VB的简单,在于启蒙,而非捷径。VB的更多背景内容,请参阅BtOfficer的相关文章。

Python作为语言的语言,其抽象程度更强,离计算机的真相也就更远。从学习的角度,初学者无法借助Python系统的学习计算机知识,等弄懂了Python花哨的语法,才发现自己小小的目标要落地,都必须去C/C++,JAVA等更专业,难度更高的领域。所以,Python注定不属于普通人。

四、Python通过什么与Office交互?

Python会代替VBA成为Office下一代语言,这种言论在Python圈广为传唱。他们不知道,VB为了一统Office宏语言的江湖,花费了数年之久才有今天的VBA。VB全工具链(VB、VBA、VBS)以Office为战略重心,服务了近26年,你说Python会取代VBA,Python是给了微软多少好处啊!

VBA生而为Office,连当年叱诧风云的VB都为之转身。如果Office没有VBA这条护城河,你以为Office能霸占办公软件头把交椅那么久? 弄懂VBA就是Office的开发语言,这一点很重要。

再来看看其他开发工具是如何与Office交互的?我们说Office是基于COM的,非Office进程的东西,想要进入Office的地界,除非你Hook,否则都得通过它提供的接口,最终的产品都叫COM加载项。Python正是通过COM接口与Office交互。当然OpenXML下的XML读写,只是纯粹的文件读写,算不上Office的开发。

五、Python凭什么取代VBA?

既然是COM加载项,那与Office交互的就是二进制,这与寄生在Office进程内的VBA完全是两码事。很多人觉得,Python处理数据的速度远比VBA快,难道其他COM加载项就不快么?VBA的势力范围除了Excel外,还有Access呢,咋不找Access比快呢?

Python离开那几个蹩脚的EXCEL操作库,还能饭否?

与其说Python会替代VBA,倒不如说Python会替代其他COM加载项的编制工具。VSTO也号称下一代VBA,要说Python会取代VBA,那先问下C#答应否?

六、醒醒吧,精力有限的职业人

Python的高大上,不是我等才疏学浅之辈能驾驭的。VBA都精简成那样了,都学不会,还学什么计算机!诚如每种语言都应回归其主场,我等又何尝不该回到自己的主场,端着业余的笑脸到人家专业的地界上去凑什么热闹。

Python取代VBA?先问C#答应否相关推荐

  1. 微软 python替代vba_微软将要用Python取代VBA,Python工程师又双叒叕要涨薪了!

    微软在上个月开启了一个针对 Excel 功能的话题,用以收集用户的反馈.随后有用户提议让Python成为Excel的一种脚本语言,不仅可以作为VBA的替代品,而且也可以作为字段函数(= SUM(A1: ...

  2. Python取代VB/VBA,弄了个寂寞!

    谣言终于实践,而不一定终于智者! 1.最近一直比较忙,系列文章迟迟未开工,索性抽个小空弄些VB/VBA人士关心的几个争论,算是辟个谣吧.这年头,好酒也怕巷子深,谣言也粉上智者了.但是,毛主席说,实践是 ...

  3. 为什么要用python处理excel-以Excel处理为目的学习python还是VBA?

    ------补充2020/07/15-21:19: (1)我认同python在作为胶水语言和库很多这两点上的优势,不过正如文中所述,99.99%用excel的人是真的用不到那些库,也没时间学习(需要有 ...

  4. 先学vba还是python-以Excel处理为目的学习python还是VBA?

    ------补充2020/07/15-21:19: (1)我认同python在作为胶水语言和库很多这两点上的优势,不过正如文中所述,99.99%用excel的人是真的用不到那些库,也没时间学习(需要有 ...

  5. vba和python哪个好学-Python或将取代VBA,成为Excel官方脚本语言???

    原标题:Python或将取代VBA,成为Excel官方脚本语言??? 微软正考虑添加 Python 为官方的 Excel 脚本语言‍ 据外媒报道,微软正考虑添加 Python 为官方的一种 Excel ...

  6. 重大改变!Python 或将取代 VBA 成为 Excel 官方脚本语言

    如果微软的 Excel 中支持了人生苦短的 Python,你还会喜欢那个直接且易上手的 VBA 编程吗? 近日,据国外媒体 BLEEPINGCOMPUTER 报道,微软正考虑添加 Python 为官方 ...

  7. vba与python相比2019_重大改变!Python 或将取代 VBA 成为 Excel 官方脚本语言

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 如果微软的 Excel 中支持了人生苦短的 Python,你还会喜欢那个直接且易上手的 VB ...

  8. python与vba的区别_选择VBA还是Python?

    首发 公众号 :EXCEL办公实战 到底是VBA,还是Python? 类似的话题,还有操作EXCEL学者Python,还是VBA 现在学习VBA还值吗?是否过期等! 这些问题,有很多粉丝在问,在知乎. ...

  9. xlwings库 ==> Python调用VBA 的两种方法

    之前被问到,Python 很强大,但是需要单独安装,而VBA是office自带的, 那么两者结合的话,如何用Python调用VBA呢? 代码如下(其中 A 是测试文件 宏的名字): VBA代码: Su ...

最新文章

  1. [亲测]在Mac下配置php开发环境:Apache+php+MySql
  2. MPB:微生物所东秀珠组-​​基于16S rRNA基因和基因组序列对细菌物种的初步鉴定...
  3. 八数码(康拓展开标记)及类似题
  4. mysql 设置时区,【MySQL】修改时区设置
  5. Java二十三设计模式之------工厂方法模式
  6. JavaEE实战班第九天
  7. Python 3.8实现支持断点续传的网络文件下载功能
  8. 【Vue】—创建组件
  9. 洛谷 P2285 BZOJ 1207 [HNOI2004]打鼹鼠
  10. Android基础入门教程——2.5.2 Notification(状态栏通知)详解
  11. 纯数学教程 Page 325 例LXVIII (4) 比值判别法和达朗贝尔判别法失效的一种情形...
  12. 如何应对微信群舆情?
  13. 5分钟从零开始搭建一个独立博客网站
  14. 车辆违章查询接口文档
  15. 设置WebView字体颜色,背景颜色
  16. 光学神经网络 Optical neural network
  17. 基于JAVA SSM框架的学校家长互动学习平台
  18. 【世界数学难题】21世纪世界七大数学难题简介
  19. JAVA野人_修道野人 用谓词表示法表示修道士和野人的问题 在河的左岸有三个修道士 联合开发网 - pudn.com...
  20. 货币的时间价值之复利计算公式

热门文章

  1. 坦克射击小游戏(后续将会升级功能)
  2. Wasserstein CNN: Learning Invariant Features for NIR-VIS Face Recognition
  3. 免费舆情监控工具有哪些,TOOM加强舆情监控提高应对能力
  4. 2015年全国计算机二级,2015年全国计算机二级考试试题题库
  5. 计算机硬件拆装步骤图文,06图解HPPaviliondv7笔记本电脑的拆机过程.doc
  6. 统计力学理想自旋模型考题解答
  7. 蓝鲸智云环境搭建(1)
  8. STM32入门笔记04_TIM定时器+案例:TIM定时器定时中断、定时器外部时钟
  9. 模块式柔性自动化生产线实训系统
  10. 计算机系求职信英语作文,计算机专业求职信英文