时至今日, 还有多少程序员认为 Python 简单的

2024-01-05 10:53:41 +08:00
 iorilu

首先, 我标题强调了程序员三个字, 是有原因的

因为外面随便搜索下, 都是什么 python 简单, 1 小时上手等等文章, 视频数不胜数

但我加上程序员, 是因为这里用户大多是程序员, 或起码知道点代码的人

我希望评价的人多少用过 python , 至少写过几百行代码, 或跑过一些 python 项目等等, 总之就是至少有一定深度的实践

反正就我本人而已, 我几年前将 python 定位为主要使用语言

我的认知是, python 压根不简单, 甚至是难度相当不小, 原因为以下几点

总之, 所谓简单只是指 python 可能用的代码行数少点, 但是你想写出所谓 pythonic 的代码, 需要花费大量的时间学习, 这点肯定是不简单的.

21057 次点击
所在节点    程序员
124 条回复
ShadowPower
2024-01-05 11:22:10 +08:00
Python 的简单是指入门简单。能让新手很快地实现自己的想法,而且还能满足各种各样稀奇古怪的需求。
给非程序员用再合适不过了。
cnightmare
2024-01-05 11:39:47 +08:00
python 实现脚本简单,对比其他编译语言,库也是比较齐全,没啥毛病,但是大工程还是编译语言吧
iOCZS
2024-01-05 11:46:19 +08:00
有的人拿到媒只能用来烧火,有的人还能合成其他材料,不同的人对同一个东西的处置能力有区别,需求也有区别。
codersdp1
2024-01-05 11:48:25 +08:00
你要这么说的话,每个语言都不简单
leonhao
2024-01-05 11:50:34 +08:00
看了一个比较新的 Python 项目,各种 yield ,async ,直接看懵了
PTLin
2024-01-05 11:51:26 +08:00
想起来我有个搞少儿编程的朋友,教 python ,教了三年连 yield 都不知道更别说基于 yield generator 的 async 了。
4BVL25L90W260T9U
2024-01-05 11:54:13 +08:00
> python 仍然不断快速迭代, 语法不断变化, 你不学习, 可能看不懂半年后的代码

扯,match 都发不多久?我既没写过,也没见别人写过

> 一些所谓简单的语法, 后面其实包含的非常深奥的原理, 比如 generator, async 等等东西

3.7 之前的 async 确实泄漏了太多底层的东西,现在还好。至于 generator ,别的语言也有 stream 啊,这是编程本身的复杂性,不是 Python 的。

> python 本身库就极为庞大, 绝大多数人可以说 90%模块都没用过

常用的模块本身就很少啊,用模块是为了解决问题,而不是知道了就一定要用

> python 使用范围太广, 想多涉及点就要相当的经验, 比如 web, gui, 机器学习, 深度学习, nlp 等等, 每一块都有专属的知识点需要大量经验, 时间

所以说不存在「 Python 程序员」这种伪概念,只有数据分析师、后端、数据科学家这些概念。反过来思考,这个恰恰是一个优点,假设一个后端,现在去研究 NLP ,至少不用先去熟悉 Python 语法。
murmur
2024-01-05 11:55:59 +08:00
python 作为胶水粘 c++当然简单,cdll 一下就搞定了,不像 java 还得写 jni
julyclyde
2024-01-05 11:57:22 +08:00
@leonhao yield 还行; async 我根本理解不了
Worldispow
2024-01-05 11:58:16 +08:00
数据分析之类的小功能根本用不到你说的这些特性。
很多需求 python 顺手百度一下,几行代码就搞定了,其他语言还在研究如何搭环境编译。
mightybruce
2024-01-05 12:01:28 +08:00
python 本身优化就是挺垃圾的, 才会导致不同的写法性能差距比较大。

真正研究 python 都是研究 python 源码 和 如何写出不错的代码,这个基本没有提,语法糖再多也不是原理。

比如 python c 代码的 PyObject 数据结构,cython 以及 pypy
shyangs
2024-01-05 12:01:55 +08:00
JavaScript 最簡單, Win, Linux, Mac 都有瀏覽器. 不像 Python 要安裝.

Python 從網頁 Copy-Paste, 排版還有可能亂掉, 要會 Python 才能修正縮進. JS 可以在完全不會的情況下複製貼上.
hello2090
2024-01-05 12:04:28 +08:00
你这么说的话,那个简单呢? C 简单,你能写出火星车控制程序吗? java 简单,你能写出 spring 吗
BYDH
2024-01-05 12:46:26 +08:00
大概是 2017 年左右,刚从学校学了点 C 基础,看培训班广告知道了 Python ,之后用写了一堆最长不过 300 行的垃圾脚本。然而 Python 用户的主体是业余人士,都不怎么懂,东拼西凑互相抄袭,哪怕只是对库的简单调用,也写得稀烂,我不是学计科的,网上又全是菜鸡互啄,出了问题都找不到人问,找不到提升的途径,于是在 2019 年转投 C#,并在随后的日子里顺利脱离了菜鸡序列。
crossggc
2024-01-05 12:52:19 +08:00
还没入门就已经放弃了
yzbythesea
2024-01-05 12:57:34 +08:00
毫无争议的简单
monsterx2a
2024-01-05 13:06:35 +08:00
你混淆了概念,不是别人说错了。

低级需要是给机器看的,高级需要是给人看的,越高级的需要越抽象。人类的需要就是抽象的,并且非常抽象。

例如一个小朋友学编程,对着计算机说,我想画一个蛇吞大象的图片。

哪个需要需要实现这个功能代码最少,就最简单
monsterx2a
2024-01-05 13:07:11 +08:00
@monsterx2a #17 需要->语言
sordidclown
2024-01-05 13:11:30 +08:00
“我没有发现任何一门语言能像 Python 这样,对初学者来说简单、对专业人士来说实用、对黑客来说令人振奋。”

摘录来自
流畅的 Python (第 2 版)
yolee599
2024-01-05 13:15:53 +08:00
用 python 不是给你研究底层的,不需要你了解什么底层原理,直接 import 包,写几句解决问题就行了,这还不简单啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1006067

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX