我为啥不想用Python
Python这门语言从一开始就是一个玩具语言,它不是给正经程序员用的东西。
运行效率低
Python运行效率很低,这就导致Python中很多库底层实际上是C++。很多时候,自己千方百计优化的结果就不如用C++暴力效果好。Numpy成了Python的中流砥柱,凡事要想高效,就往Numpy上靠。这就导致一个库劫持了一个语言。
用Python的时候,你是无法进行复杂度分析的,Python封装得过于严密,空间时间完全脱离了程序员的控制,变得奇形怪状。两个都是O(n)的操作,效率可能差异很大,原因可能很奇葩。
靠缩进来表示代码块
没有括号,粘贴代码时总是小心翼翼。代码略微写长些,就忘记了缩进的层次,需要按几次退格键才能退出上面的多重循环,这个任务需要一把游标卡尺,或者需要一个很大的屏幕。
线程
线程无法充分利用多核,进程又过于沉重甚至需要复制很多数据。
描写逻辑时语法薄弱
许多高妙的算法都是基于数组下标或者指针的来回跳转,C系列语言提供了灵活的for语句,可以很直观的表达。Python的for却很弱,只能使用while循环,这就导致Python写起来像汇编语言一样,代码并不简洁。
弱类型
Python虽然提供了灵活的内置的字典、列表、元组,这些基础类型可以取代Java中的许多对象,这是Python的优势。
当拿到一份Python代码时,弱类型让人难以理解。而Java中的冗长却出处互相印证,一眼看去立马明白,让人很有成就感。
弱类型导致IDE无法提供足够强大的代码提示。
弱类型导致程序员不太敢重构,语言影响思维。
我为啥不想用Python的更多相关文章
- 给想学python但还没有接触过的你,python代码的书写规则,小白入门
Python 文件结构 变量命名 注释 单行注释 多行注释 缩进 Python 文件结构 #!/usr/bin/env python3 # 指定python解释器 # -*- coding: utf- ...
- 新手想掌握Python技能需要众多Python项目练习,适合项目有哪些?
适合新手练习的Python项目有哪些?简单易上手的Python项目汇总:Web 项目设计:内容聚合器.正则表达式查询工具.网址缩短.便利贴.功能.测验.GUI 项目设计:MP3 播放器.闹铃提醒工具. ...
- 想学Python不知道从哪里开始学?|百度网盘免费下载| 这本入门书了解下
百度网盘免费下载:编程小白的第一本 Python 入门书 提取码:s0pc Python是什么 Python是一种计算机程序设计语言,由吉多·范罗苏姆创造,第一版发布于1991年,可以视之为一种改良的 ...
- 想学Python不知如何入门,教你!
一.入门引导 想必有很多小伙伴想学习Python,又不知道如何入门,总觉得学习一定要头悬梁,锥刺股!NO,今天给大家分享下如何轻松入门Python! 首先,我们要学习Python,那一定要和你 ...
- 2000字谏言,给那些想学Python的人,建议收藏后细看!
1. 这几天陆续收到很多读者.球友的留言.私信,说要怎么学Python?有没有基础的,偏小白的学习方法?我的回答是:等我统一答复. 小胖从不食言,今天就来说说我觉得一个零基础.想转行.一直不得法的人应 ...
- 想成为Python全栈开发工程师必须掌握的技能
什么是Python全栈工程师? 即从前端页面的实现,到后台代码的编写,再到数据库的管理,一人可以搞定一个公司网站的所有事情,真正实现全栈开发. 全栈只是个概念 也分很多种类 真正的全栈工程师涵盖了we ...
- 想学Python?这里有一个最全面的职位分析
Python从2015年开始,一直处于火爆的趋势,目前Python工程师超越Java.Web前端等岗位,起薪在15K左右,目前不管是小公司还是知名大公司都在热招中. 当然,每个城市对岗位的需求也不尽相 ...
- 想成为Python高手,必须看这篇爬虫原理介绍!(附29个爬虫项目)
互联网是由一个个站点和网络设备组成的大网,我们通过浏览器访问站点,站点把HTML.JS.CSS代码返回给浏览器,这些代码经过浏览器解析.渲染,将丰富多彩的网页呈现我们眼前. 一.爬虫是什么? 如果我们 ...
- 抖音美女千千万,想用Python爬爬看
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 星安果.AirPython PS:如有需要Python学习资料的小伙 ...
随机推荐
- RabbitMQ的几个常见问题
1. 如何保证消息尽量发送成功? 问题描述: 如果没有启动消费者,重启了RabbitMQ服务,队列和消息都会丢失. 解决方案: 针对这个问题,有以下几个机制可以解决: 生产者确认: 持久化: 手动AC ...
- 201871010105-曹玉中《面向对象程序设计(java)》第七周学习总结
201871010105-曹玉中<面向对象程序设计(java)>第七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这 ...
- zookeper分布式搭建1
1.zookeper的下载与安装,见:https://www.cnblogs.com/wanerhu/p/11144815.html 2.准备三台centos,进入etc/hosts 3.编辑内容 映 ...
- Leetcode61.旋转链表
链表中的点已经相连,一次旋转操作意味着: 先将链表闭合成环 找到相应的位置断开这个环,确定新的链表头和链表尾 class Solution{ public: ListNode* rotateRight ...
- 【day03】php
一.类型判别函数库 1.安装:类型判别函数库是PHPCORE的组成部分,不用安装 2. (1)is_integer|is_int|is_long 描述: 检测变量是否是整数 格式: ...
- [LeetCode] 486. Predict the Winner 预测赢家
Given an array of scores that are non-negative integers. Player 1 picks one of the numbers from eith ...
- TJOI 2015 概率论(生成函数)
题意 求一棵随机生成的有根二叉树(节点无标号,各种不同构的情况随机出现)叶子结点个数的期望. 思路 用生成函数做是个好题. 我们考虑设 \(n\) 个节点,所有不同构二叉树叶子结点的总和为 ...
- Django中render_to_response和render的区别(转载)
转载地址:https://www.douban.com/note/278152737/ 自django1.3开始:render()方法是render_to_response的一个崭新的快捷方式,前者会 ...
- 使用GitHub的仓库以及介绍
一.创建仓库 假如Responsitory name是Hello-World Description一栏中可以设置仓库的说明. Public, Private 在这一栏可以选择Public还是Pri ...
- html5手机端播放音效不卡的方法
html5手机端播放音效不卡的方法线下载http://wxserver.knowway.cn/solosea/js/audioEngine.js 这个是性能不错 然后直接播放音效就可以了 audioE ...