本人写了10年php了。今年开始改写python了。不是说php有什么不好,php在自己的势力范围内还是很牛比的。只是我已经不能满足于php那两亩地了。

习惯了脚本,所以很自然就过度到python了。

相比之下,python牛比的地方:

#)模块化比php做的好 ;

#)适用范围比php大太多,python是全功能脚本!php是专门为写动态网页而生,而py可以用来玩玩桌面应用及其它很多方面,比如pyqt5 ,pycef3 ;

再比如:做一下进程管理可以用psutil ;科学计算有pynum 。

这些方面php基本只能观望

#)python的代码加密比php容易做,因为cython简直就是大杀器! 而php目前几乎所有的加密都可以在网上找到破解!

python让人不爽的地方:

#)逆天的缩进语法! 这一点争议比较大。缩进语法明明就是让人不爽,也给大家的交流带来不方便。如果没有缩进语法这种强迫症,就不会有后来的空格与Tab之争。python代码被贴到网上的bbs,格式一般都会乱掉,再复制出来基本就没法用了。

看上图的python代码是不是格式乱掉了!

v2ex不是很小的网站了,但是也是不支持python代码的。

相比之下,c,c++,php这类用括号的语言就不怕,格式乱掉了可以强制format回来。

所以我认为python应该用另一种办法来强制格式,就是使用大括号来区分语法单位但是要求格式不合法的代码直接无法运行!

也即要求在代码运行前使用官方的格式化工具format !  这样也可以做到所有人的代码都使用完全相同的格式。

--------------------------------------------------------------------------------------------------------

但是为什么有那么多python信徒又偏爱缩进呢? (本文关闭了评论,不然一定有人要来喷的)

原因在于:瑕不掩瑜! python从总体来讲确实是非常强大。可以讲是最强大的脚本语言,没有之一!普通码工不喜欢缩进也没有办法,没有能力改变,慢慢的就习惯了,时间长了就爱上了。

以前新闻上讲一个事情:洛阳地下室性奴案,主犯名叫李浩。 其中有受害的性奴被解救出来的时候,还非常担心李浩的安全呢。貌似爱上了加害人。

这就是人类奇特的心理现象,对于长期无法改变的加害,慢慢会去接受,进而甚至视为必需!

(心理上要是不做这种转变,那大脑就得一直处于矛盾纠结状态,时间长了是会疯掉的!还不如转而爱上它,这样大脑也能休息一下)

--------------------------------------------------------------------------------------------------------

#)python的速度确实不怎么快。 不过与php在一个数量级,对于多年习惯了php的人来说没啥感觉 ,能快速完成任务就行

--------------------------------------------------------------------------------------------------------

再说多一句,php的array确实是所有语言中最强大灵活的数据结构了。是个让人怀念的特性。

说一说python的牛比与不爽的更多相关文章

  1. Async Cow Python 七牛异步SDK

    # Async Cow Python 七牛异步SDK > gitee链接 >github链接本SDK基于官方SDK改造而成,但又对其进行了进一步封装,简化了相关操作例如:- 1.不需要使用 ...

  2. python爬虫23 | 手机,这次要让你上来自己动了。这就是 Appium+Python 的牛x之处

    你有没有想过让你的手机帮你自动完成某些事情 比如自动帮你抢红包 有些软件不是有签到活动么 这些傻瓜式的操作 能不能让手机自动签到呢? 自动帮你叫外卖 自动帮你打电话 等等 还有 对于手机上的一些比较难 ...

  3. python基础-牛逼的三层循环,实现想在那里退出,就在那里退出。

    #!/usr/bin/env python # -*- coding:utf-8 -*- #Author: nulige tag=True #设置tag控制他,只要一输入Flash就退出整个循环 wh ...

  4. python初试牛刀

    需求:在L7的一台机器上做nginx配置,然后代码分发到别的所有的机器上.由于目录中有很多配置文件,而且防止误操作,需要修改配置之前先备份原配置.然后需要在运行修改配置的脚本之前,先弹出界面,告知操作 ...

  5. Google推出了Python最牛逼的编辑器

    环境配置对于大多数人来说都是拦路虎,我们小白往往不知道: 怎么正确的安装 不知道选择什么 怎么安装常用的第三方库 ... Google推出了一个在线的网站 https://colab.research ...

  6. Python真牛逼,获取压缩文件密码,我只要一分钟!

    事情的经过是这样的: 又是奶茶,行吧行吧. 快点开工,争取李大伟回来之前搞定. 李大伟说是6位数字密码 那么我们可以利用python生成全部的六位数字密码 这样,我们就生成了一个从000000到999 ...

  7. Python黑帽编程 2.0 第二章概述

    Python黑帽编程 2.0 第二章概述 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一 ...

  8. 你会用Python做出装逼的东西吗

    如果我回答:“用Python很牛逼,但不能做出装逼的东西”,那大家来学习“小白的Python入门教程 ”,还有多少意义? 所以,为了让装逼的小船升级为牛逼的巨轮,让大家学完“小白的Python入门教程 ...

  9. Python学习资料整理以及书籍、开发工具推荐

    我不知道大家学习Python的时候是不是和我一样感觉很无助,不知道在入门或者进阶的时候应该掌握哪些知识点,下面我就梳理下我自己学习Python开 发的过程及资料分享给大家,这些方法资料可能并不适合所有 ...

随机推荐

  1. less学习

    // 1.变量:颜色可做+- // from @nice-blue: #5B83AD; @light-blue: @nice-blue + #111; #header { color: @light- ...

  2. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  3. Hawk 4.6 并行化

    并行化 Hawk支持单机并行化,也就是使用多线程获取数据.它可以控制目前所有任务的数量,为了不给网站造成过大的压力,仅当任务池中的任务数量小于一定值后,才会插入新的任务. 你可以在数据清洗的 执行面板 ...

  4. 算法与数据结构(九) 查找表的顺序查找、折半查找、插值查找以及Fibonacci查找

    今天这篇博客就聊聊几种常见的查找算法,当然本篇博客只是涉及了部分查找算法,接下来的几篇博客中都将会介绍关于查找的相关内容.本篇博客主要介绍查找表的顺序查找.折半查找.插值查找以及Fibonacci查找 ...

  5. JavaScript中String对象的方法介绍

    1.字符方法 1.1 charAt() 方法,返回字符串中指定位置的字符. var question = "Do you like JavaScript?"; alert(ques ...

  6. xss和sql注入原理学习

    8.4 Web跨站脚本攻击 8.4.1  跨站脚本攻击的原理(1) 跨站脚本在英文中称为Cross-Site Scripting,缩写为CSS.但是,由于层叠样式表 (Cascading Style ...

  7. Android中使用ViewFlipper实现屏幕页面切换(关于坐标轴的问题已补充更改)

    屏幕切换指的是在同一个Activity内屏幕间的切换,ViewFlipper继承了Framelayout类,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果.如 ...

  8. 解决 Could not find com.android.tools.build:gradle 问题

    今天拉同事最新的代码,编译时老是报如下错误: Error:Could not find com.android.tools.build:gradle:2.2.0.Searched in the fol ...

  9. Android中Fragment的两种创建方式

    fragment是Activity中用户界面的一个行为或者是一部分.你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用.你可以认 ...

  10. GIT笔记命令行(1)

    Git简单易用,只要输入git就可以列出他的所有参数 C:\Users\spu>git usage: git [--version] [--help] [-C <path>] [-c ...