如何看待C++越来越像Python这个说法?
时间:2021-07-01 10:21:17
帮助过:90人阅读
相关链接:C++ Has Become More Pythonic
中文链接:你们以为我在学C++?其实我在学 Python
回复内容:
一初学python者问禅师:为什么一个动态而不是静态的语言,一个应用领域更多是在shell/php和java领域的语言天天会和C++比较呀?
禅师拿起新华字典贴脸上.
初学者恍然大悟:是了!编程的本质,不过都是代码尔.就像各种文学逃不过一本字典.
禅师跳起来一个爆栗:我是说你们脸皮和字典一样厚!
说说我翻译那篇文章的初衷吧。
其实就俩字:好玩。
那会恰好对 Python 挺着迷的, 工作上又一直使用 C++。突然发现,用 C++ 来模仿 Python 的一些特性,即锻炼了 C++ 的编码能力,熟悉了 C++ 新标准的语法,又了解了 Python 的基本语法,和一些 "奇技淫巧"。这种杂糅的学习方法,个人觉得挺新颖,又很适合初学者。
我那篇文章的最后给了两个链接是原文没有的:
- 如何编程求解 100 以内的质数? - Milo Yip 的回答
- ryanhaining/cppitertools · GitHub
这么玩的人,早就有了。难道真的就我一个人觉得很有意思?
万万没想到,这也能扯到语言之争。。。
万万没想到,这也能变成黑这黑那。。。
用很戏谑,不正紧的语言来描述这么个玩法,竟然仍然被理解成一种貌似严肃的说法了。。。
不知道原作者真实的想法,而我肯定不会把『C++ 模仿 Python』信以为真的。。。
能不能不要总是这么无聊。
非要板起脸说说这个脑残,那个菜的。
看看一些有趣的东西,乐呵乐呵得了呗。
Python 本来就打杂家拳的,你随便举个被 Python 学来的 feature 都可以说某某语言越来越像 Python 啊……
- Range Loop 是好,但 C++ 这语法不是 Java 的么。
- Python 个动态类型帮 C++11 的静态类型 + 类型推导唯一的相似点是你不用显式声明类型,除此之外根本就是两码事。
- 能脑补 BS 老爹要是因为一个语法糖就羞愧,「也是醉了」。语言层面提供一套默认的 list/tuple/dict 实现是好的,但吹成这样也太 naive 了吧。
- Lambda 居然变成 Python 的大神器,抱歉各位我出去笑会。
- 这年头这种程度的标库不是温饱级别的配置了么。
- 至于 Variadic Function,C 都有……但这跟 initializer_list 那个 homogeneous list 压根就是两码事好不好。
这种啥都不懂的井底之蛙 Python 脑残粉,你让他写两天 Haskell 他就乖乖闭嘴了。
别逗了,明明就是 C++ 和 Python 都在学 Lisp(逃
跪求python出concept mapping配合模板偏特化(动态语言的话应该叫开放式的动态的multiple dispatching),这两个搞出来了,我就承认。
Haskell 表示笑而不语
文章里举例的特性应该是现代高级语言都具备的,不能说是谁抄谁
c++可是背负着高性能的枷锁追赶脚本语言哦,所以别再比较了,没意义。
这真的不是在黑?
可人又说了,Python 里创造个 Dictionary 简单的跟什么一样6。
myDict = {5: "foo", 6: "bar"}
print(myDict[5])
切,C++ 本身就有 map 类型,现在又多了个哈希表 unordered_map,更像了:
auto myDict = std::unordered_map{ { 5, "foo" }, { 6, "bar" } };
std::cout << myDict[5];