收藏文章 楼主
Python和Go,到底应该站哪边儿呢?
网友【chuang】 2020-05-06 00:48:24 分享在【时代发展的印记】版块    1    2

「人生苦短,我用 Python」是当下非常流行的一句口头禅。但你有没有想过,Python 就那么好吗?在某些方面,其他语言真的不香吗?本文作者对比了 Go 和 Python 的特点及测试结果,认为开发者应基于项目的属性和规模以及所需技能组合,合理地选择编程语言,而不是一味地将 Python 用在所有任务中。

网友分享在meiguo.com上的图片

互联网上有大量优秀的代码,它们构成了多种基础架构的基石。甚至本文所在网站的创建初衷也是创建优秀代码。虽然普通用户并没有注意到这一点,但优秀的开发者总是致力于优化其应用(以及代码)。

编写优秀代码的基础在于开发者的技能以及他/她所选择的编程语言。这必然导致开发者之间出现历史性的冲突,这冲突不仅存在于技能层面,主要还在于开发者所选择的语言。如果你把两种编程语言(如 Golang (Go) 和 Python)放在一起对比,大概率会得到这样的结果。

但是,我们退后一步,放下个人偏见和喜好,从优点和功能的角度来评价两种语言。然后设置公平的竞争环境和技能水准。

现在,我们只有两个选择:Go vs Python。那么问题来了:哪种语言更适合你?

关于 Python

询问一些开发者后,你会发现 Python 是「空前绝后」的语言。Python 获得这么多人青睐的原因在于它是一门非常优秀的编程语言。互联网上到处都是用 Python 写就的奇迹。

Python 是一门「古老」的语言,其概念首次出现于 1991 年。Python 的历史积淀赋予了它一些优势。Python 的使用者众多,这表示这门语言稳定,且具备大量编写完备的文档。在大部分案例中,你能找到几乎所有事物的库,以及关于你所思考的所有事物的代码示例。对于开发者和企业来说,这意味着使用 Python 伴随而来的是大量经验和代码,只需要评估即可。

网友分享在meiguo.com上的图片

还有大量以 Python 为基础创建的开源项目,因此在大多数情况下,你不需要从头开始。Python 可以很好地集成到企业级应用中,可用于机器语言和 AI 应用。但它也有缺点,比如,不适合内存密集型任务,执行速度略慢,不适合移动应用开发。

关于 Go 语言

Go 于 2009 年由谷歌开发完成。它解决了一个问题,创建出一种没有 C++等语言的过重包袱和过分设计的语言。这使得 Go 在性能和速度上都有极大提升,使用 Go 工作成为一件乐事。此外,大部分第一次使用 Go 语言的开发者不会感觉到不便,因为 Go 中的熟悉元素及其易用性构成了一项惊喜。

网友分享在meiguo.com上的图片

这并不是说 Go 语言在所有情况下都是完美的。虽然它将速度和优雅度提升到新的层次,但也舍弃了一些用户期望的功能。比如,它不具备大量库,也不支持继承。此外,它没有 GUI 库,也不支持对象导向的编程。Go 语言的特点表明它具备轻量级线程实现(Goroutine)、智能标准库、强大的内置安全性,且可使用最简语法进行编程。

性能测试

关于 Go 和 Python 的优缺点能说上三天三夜,但最关键的一点还是它们的性能。因此接下来本文在基于 Intel® Core™ i7–9700K CPU @ 3.60GHz × 8 cores 运行的试验配置中执行一些测试。

代码地址:https://github.com/sekarasiewicz/go-python-benchmark

二分搜索

创建整型列表(从 1 到 100000),使用二分搜索找出数字 729。测试结果如下:

网友分享在meiguo.com上的图片

冒泡排序

首先生成整型列表(包含 10000 个随机数字元素),然后使用冒泡排序算法对这些元素进行排序。测试结果如下:

网友分享在meiguo.com上的图片

从文件中读取

该测试是关于读取「lorem ipsum」文本文件,测试结果如下:

网友分享在meiguo.com上的图片

HTTP 请求处理

创建 HTTP 服务器很简单,但是用 Python 搭建一个类似的服务器则需要花费一番功夫。我们来看二者对简单的「hello world!」消息的响应时间:

网友分享在meiguo.com上的图片

如何选择?

Python 是社区最受欢迎的语言,在 2019 年第一季度「GitHub 发展最快的编程语言」中名列第二位(pull requests 数量增长 17%),但 Golang 也没落后多少,在该排名中名列第四(pull requests 数量增长 8%)。在 Golang 和 Python 中做出选择变得更加艰难。然而,在选择适合自己的语言时,你需要考虑以下事项:

可扩展性:Golang 在创建之初就考虑到了可扩展性。其内置并发性允许同时处理多项任务。Python 也使用并发性,但并非内置,它通过线程实现并行化。这意味着如果你打算处理大型数据集,Golang 似乎是更适合的选择。

性能:众所周知,Python 并非内存/CPU 友好的语言,但它具备大量库,可以高效执行基础的开发任务。Golang 具备内置功能,更适合微服务软件架构。

应用:Python 适合人工智能、数据分析、深度学习和 web 开发任务,而 Golang 适用于系统编程,执行云计算和集群计算应用的开发者喜欢使用 Golang。

社区与库:如前所述,Python 的历史赋予它一定优势。其中之一就是它具备大量库,拥有大型支持社区。而 Golang 语言仍在增长期,没有那么多库和社区支持。但是我们不应因此判定 Go 语言出局。其增长率和采用率非常惊人,每天都在扩张。

执行:如果速度是王道,那么 Golang 遥遥领先。

考虑以上事项后,具体使用案例将成为采用哪种语言的决定性因素。假如你的开发团队要创建微服务,那么 Golang 是更合理的选择,因为它速度快、易于编程、可扩展性优异。而 Python 更适合 AI、ML 和数据分析任务。

从直接测试结果来看,Go 在大部分案例中领先,被认为是 Python 的有效替代方案。开发者在选择编程语言时,应考虑开发项目的性质和规模,以及所需的技能组合。

好消息是,不管选择了哪种语言,Go 和 Python 都在持续演进。尽管在大多数情况下 Golang 可能是更好的选择,但 Python 社区不会坐以待毙。这两种语言都在扩张和增长。这意味着,未来我们将看到更多功能和改进。

原文链接:https://medium.com/softkraft/golang-vs-python-which-one-to-choose-3c052ec324e6

出处:头条号 @机器之心Pro

meiguo.com 发布人签名/座右铭我已经有美国绿卡了,只差美果绿卡啦!
大家都在看
楼主新近贴
回复/评论列表
默认   热门   正序   倒序
meiguo.com 创始人

emotion

2   2020-05-06 00:48:24  回复

回复/评论:Python和Go,到底应该站哪边儿呢?

暂无用户组 升级
退出
等级:0级
美果:
美过
精华推荐
  1. 川普政府在力推药价改革和数字医疗系统
  2. 中国🇨🇳开始质疑英伟达芯片“存后门”
  3. ICE抓捕的非法移民中,中国人数量激增?
  4. 中国留学生在入境美国时遭遇盘查,中方大使馆发布安全提醒!
  5. 先交押金!美国重启了“签证保证金”试点计划
  6. 植物油更健康?动物油脂摄入或将加速肿瘤生长
  7. 全美房地产市场在趋向中性,区域分化明显!
  8. 中美连谈5小时,川普总统公开感叹“中国太强硬”… 英伟达在加紧扩大芯片出口量
  9. 2025年度的美国公立高中排名发布,咱只关注前三!
  10. 选择西雅图、圣地亚哥还是洛杉矶?全面对比“三城生活”
  11. 白宫开通了TikTok 账号,传播政策信息!
  12. 川普政府的对华政策突然改变了?
  13. 美国华裔二代坦言:中国发展现状,让父辈移民后悔了!
  14. 盘点“数字游民”的精选停留地!2025“逃离美国”指南
  15. 香港永居 vs 美国国籍:身份选择背后的生活考量
  16. 麻省理工学院发布AI学习平台“MIT Learn”
  17. 广西防城港“奔驰女司机事件”引发全网热议
  18. 加州州长竟然模仿川普总统的风格发帖,粉丝数和支持率“都涨了”!
  19. 疯狂打压华人精英,勒令华人CEO辞职… 川普政府的致命错误?
  20. 川普总统“访华表态”继续反复
  21. 持中国大陆护照在申请美国签证的注意事项更新(2025年8月版本)
  22. 核聚变技术或将成为黄金价格的颠覆者
  23. 川普家族竟然靠它狂揽45亿美金!操盘手是赵长鹏?
  24. 华人留学生“索赔1亿美元控诉”大学期间的农药伤害
  25. 华人科学家身陷“杀猪盘”,短短数月就被掏光250万美元积蓄!
  26. 为激励员工,OpenAI打算豪掷96亿美元!
  27. 中美经贸谈判重启,瑞典磋商和商界代表团访华“双管齐下”
  28. 苹果投资了6000亿美元,加速“美国制造”计划!
  29. 美国“真放宽”了对中国留学生的入境政策?
  30. 美国年轻人的“中国观”悄然转变
  31. 房子属于你,但你得付费受他们管着!关于美国HOA
  32. 蔡文胜的2025大动作之五,香港投资版图在持续扩张!
  33. 川普总统签署了“对等关税令” 引发全球震荡
  34. 川普总统的态度突变,暗示乌克兰应该反击俄罗斯本土?
  35. 敌友即友?马斯克和扎克伯格开始接触,图谋合伙收购OpenAI?
  36. 工作日没空?周末集中运动同样有益健康!

美国动态 美果搜索

Your IP: 216.73.216.186, 2025-09-01 19:44:19

Processed in 0.59498 second(s)

头像

用户名:

粉丝数:

签名:

资料 关注 好友 消息
已有0次打赏
(2) 分享
分享
取消