学CS的坛友,Python的好处在哪些方面?

感觉坛里到处都是大厂CS专家,想问问是不是你们平时工作都是用Python的?本人商科PhD,本着就业目的,最近准备着手再深刻学习Python,但是找不到动力。平时做研究都是用R或者Stata,因为我们处理数据,估计模型之类的这两个很方便,paper上面基本都是这两个软件为主,也有很多现成的stat package。

在tutorial中,还是讲处理数据,感觉Python没有优势啊。。所以Python的主要作用是什么?我之前用过它做Web Scrapping,这个是我目前唯一觉得R和Stata不能处理的地方。我不知道是我找的资料不对还是啥的。请教这样的背景下应该以怎么样的心态去学Python?

2 个赞

学术界用R,工业界用Python。你需要和大家一起工作,仅此而已。Python不用深刻学习,玩具一样的语言,本来就不讲究。看个Tutorial写写代码顺其自然就行了。

我花在琢磨Python语言本身上的时间可能不及C++的1%

9 个赞

python费资源,多线程也不行,本来就是个解释语言,写点简单玩意还行,上大的系统就不行了

主流还是Java Kotlin Scala
微软系的C#

4 个赞

Python因为学的容易所以用的人多,尤其是其他非CS专业,不管是物理还是生物;所以适合跨学科合作。以及搞AI一般用Python多,虽然也只是个前端语言,操作各种库来生成背后的高性能实现。

4 个赞

说的很有道理。但是我感觉语言这方面逻辑很重要,一直用R 感觉像一直吃粤菜的广东人去下四川馆子,有点抵触。你学着么多语言怎么在他们之间转换呢。

1 个赞

:thinking: 比如什么作用,一般你在工作中什么类型的工作要用Python

这两个就真没听说过了 :joy:

4 个赞

上学的时候先学的R再学的Python,喜欢Python更多,工作以后就只用Python了。

这些都是垃圾,易语言才是王道。
易语言牛逼牛逼到写个hello world 都会被杀毒软件识别成木马

我感觉如果零基础学Python很好入手,别的programming用习惯了需要调整的过程。为什么AI喜欢用Python?只是因为现成的库多?

1 个赞

Why?工作中什么是Python有强项的地方?能不能举几个例子 :sweat_smile:

每个东家都不一样,你要问用python做主要service得公司问问他们能干嘛了
python在我干过的几家都是本地跑自己的script处理点小数据,或者做什么testing用的

Kotlin和Scala都是run在JVM上的,本质上就是Java的变形,适应的玩意不一样,Scala的对异步处理比较强大,大数据处理的应用比较多,你会Java,学Kotlin和Scala就很快,就是语法不一样,本质都是一样的,Scala和Kotlin都是直接调用Java的Library,所以他们三个一回事情

2 个赞

我是做analytics的,用Python本地做automation, pull data, cleanse data, 跑ML model都很方便。
我个人感觉R相对比较强的是stats tests和画图,当然相应的包在Python里也有。
Python用的人多,各种包满天飞,总有一款适合你。

1 个赞

其实除非你做很底层的开发,其他情况下编程语言一点都不重要,基本你去的公司和团队用啥,你跟着用啥就是了。

而python本身也没多少内容吧,除非这是你入门的第一门语言,不然过一遍教程,用到的时候查一查,花不了多少精力。

6 个赞

我很不喜欢Python,但是它就是个粘合剂。从shell script到C库,什么都可以粘在一起:smile: 它既不优雅也不快,就像你们家的扳手,制作粗糙你也不爱但是时不时拿来用用。不要take it too seriously.

4 个赞

如果目标是进大厂,其实工作上用啥语言完全看需求,大多数都默认你边工作边学习,而且一有的项目完全可以用多个语言。按照进大厂的目标,你现在需要的是一个面向刷题,面向面试的语言,Python 就是一个很好的选择。其他解释性语言比如 javascript 都可以。标准就是在写题的时候如臂指使,语言本身不会给你带来任何心智负担,影响你想算法就可以。

如果你的目标是从一个语言开始进入 CS 的世界,想打基础学习各种基础知识,那么 C 或者 Python 也挺好。

总之,你的目标是啥。如果不打算转行码农,那就看你日常工作用的到啥就学啥呗,用不到不要强求。

3 个赞

看工作内容啊,quant 相关的基本要求都是R/Py/SQL外加spss 什么的。
感兴趣的话可以搜搜data 相关的job posting

1 个赞

说个偏门思路,代码维护性。
Python拿来自己写点小东西或者当个胶水还是很舒适的。语法好理解,出成果快。但是写出一个可靠的、对各种异常处理到位的、可读性可维护性很高的Python大项目却不容易。这当然可以做到,但是如果你在写Python的时候规定好了输入输出的数据类型,各种面向对象封装,都做到这一步了我为什么不用java :yaoming:

我感觉也想往data scientist,analytics或者risk方面找工作。想学Python主要是担心面试如果要考Python coding现场学就来不及。多少会指定语言呢?

2 个赞

我遇到过有coding test的都是可以自己选择语言的,除非Job Description就是要求你会某一种语言。

2 个赞

应该不转码了吧,学了这么久商科有点难。。。主要是面试导向型吧,挺前辈们说面试前刷leetcode,python啥的。

1 个赞