Python不适合researcher用么

2013-11-30 14:22:12 +08:00
 freeznet
昨天交了一门课的final project,主要是对一个算法A的研究和implementation,然后为了起对比效果,所以用python实现了算法a,同时和实现了一个类似的算法b
然后昨天做简短的presentation的结束后,老师说他觉得python是不适合用来做research的,推荐今后的coding都使用c/c++
由于我用python的时候也考虑了一些问题,就选用了pypy来跑,不过还是不明白为什么一定推荐用c/c++
6968 次点击
所在节点    Python
61 条回复
Livid
2013-11-30 14:38:43 +08:00
人对于自己不熟悉的东西就会排斥,很正常,不过还是为你们老师觉得难过。
Mutoo
2013-11-30 14:40:43 +08:00
python 绝对是一门 science friendly 语言。有很多很强大的科学库,例如 numpy 。做 NLP 也是一流的。
9hills
2013-11-30 14:56:26 +08:00
用性能数据打脸
freeznet
2013-11-30 14:59:32 +08:00
@Mutoo 的确,我的很多作业都是依托numpy,scipy,虽然作业上老师都会推荐用matlab/octave

@Livid 当时从老师的反馈中得到的意思大致是他觉得python跑出的结果可能会更难被认同,不过他对我们跑出的结果还是很惊喜,也表示出了好奇= =
freeznet
2013-11-30 15:00:19 +08:00
@9hills 他的确对我们的性能表示惊喜= =所以要了代码和TA研究了...
oloopy
2013-11-30 17:03:30 +08:00
做个猜测。Python适合research,但是对于某些specific的课程,Python会不利于与其他人交流。如果老师站在学生的角度,非常有可能做出这样的推荐,更多的用common language完成作业,并参与讨论。
lalalakakaka
2013-11-30 22:32:11 +08:00
@freeznet

直接问你们老师:我买不起matlab怎么办?学校提供正版matlab授权吗?
freeznet
2013-11-30 22:35:35 +08:00
@lalalakakaka 所以有推荐用octave咯
acheng
2013-12-01 00:23:54 +08:00
C++王道 以后你会明白的 当你做research 处理海量数据的时候 你才会发现py什么的脚本语言都是屎
那些numpy 或pypy 都是浮云
freeznet
2013-12-01 00:40:08 +08:00
@acheng 并没有拒绝说用c/c++ 只是我觉得使用python更容易实现算法,如果需要处理海量的数据,也自然会选用c/c++,也不至于说脚本语言对于处理海量数据是屎吧= =
acheng
2013-12-01 00:44:33 +08:00
@freeznet 你确定用py处理过海量数据? 你目前处理的最大量数据是多少GB?
csslayer
2013-12-01 01:30:40 +08:00
ˊ_>ˋ 我这边搞 PL research 的都用 Python 你说呢……
Kabie
2013-12-01 01:42:50 +08:00
毕竟你们是纯粹的算法课程吧?…………老师估计是担心在算法之外……动态语言本身对性能会有影响……
9hills
2013-12-01 01:51:42 +08:00
@acheng ca 又把回复点成感谢了。。。


我用python处理过 1PB的数据。。。你的单位还停留在gb....
acheng
2013-12-01 02:05:15 +08:00
@9hills 你牛逼 时间花了多久?
binux
2013-12-01 02:35:27 +08:00
@acheng 每天用着awk处理着上PB数据觉得python算什么。。。
davepkxxx
2013-12-01 02:41:11 +08:00
搞 research 还是用 C/C++ 吧,很多 Project 对性能要求很高。
acheng
2013-12-01 03:27:14 +08:00
@binux 牛逼 PB数据 都是啥数据呀
wwqgtxx
2013-12-01 06:50:40 +08:00
@acheng 我会告诉你googlecode是用python写的么?这个数据量够大了吧!
bombless
2013-12-01 09:07:11 +08:00
我觉得 numpy 这些就类似 matlab 之类的那几款数学软件,是为了给用户提供一个方便的界面来使用
如果整个研究是你自己在做一套系统,那 numpy 这样的例子并不合适
C++ 有模板元编程,运算符重载,类型系统这样很方便的特性
对性能有要求的场合还有 Intel Parallel , C++ AMP 这样的工具
这些都是 Python 所没有的

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

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

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

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

© 2021 V2EX