[问题] 想要扎实学习PYTHON如何开始?

楼主: Helicoid (螺旋面)   2016-06-10 14:03:05
我自己的背景是CS硕毕业不久
学校都以C++为主流教学
会了C++之后其实多数语言就没什么难度了
而最近用了几个月的python
但问题来了
不久前去面试 因为我用python回答
他就问我mutable和immutable 但我印象很模糊 所以讲错了
回来找了一下资料 才觉得这真的是基本中的基本
但是找了好多教学资源都只大概提到 所以当初就不会
因为感觉现在学程式的主流就是马上变出一个Hello world最重要
其他技术细节 写久了慢慢就懂了
之前去书局翻书 大概也是介绍语法啦 神奇的用法啦 什么的
但是却没看到有书仔细讲解python的细节
例如说内存怎么开的 GC怎么做 常用的东西是怎么实作的
例如我知道C++ STL里面的vector是用array实作
我就知道该用push_back会比较快
知道map和unordered_map分别用RB tree和hash实作
这样我看到问题就能想到什么才是好方法
但是python...
我有一种感觉 如果继续用现在的方式学python
一直在学很酷的语法、各种package的用法
那我只会与真的学好他越行越远
而堕落成脑中塞了一堆知识 却不懂得活用的码农
想问各位,有什么推荐的学习资源
能够解决这种问题吗
作者: LiloHuang (十年一刻)   2016-06-10 14:21:00
可以想办法去找到这本旧书 http://goo.gl/00Oexq底子够好也可以直接 trace 源码 https://goo.gl/iipwkO个人认为,学很酷的语法跟熟悉各种 packages 也很重要不想看源码,在意执行速度可看 https://goo.gl/iKvqD5我想精通 Java 的人也很少有人把虚拟机源码看完的 XD我想高阶语言的重点在于避免重新造轮子,站在巨人肩膀因此熟悉有哪些 packages 可以活用,相对来说更重要
作者: freeunixer (御剑客)   2016-06-10 14:40:00
先买几本书看,用了几个月,会一点,啥都搞不清楚,正常的
作者: bigpigbigpig (To littlepig with love)   2016-06-10 14:47:00
基本门崁:Fluent Python,接下来K Cpython 原始码
楼主: Helicoid (螺旋面)   2016-06-10 23:39:00
感谢 够我看一阵子了!
作者: ripple0129 (perry tsai)   2016-06-11 02:43:00
有时候觉得问这些底层的原理似乎在走回头路,要搞的这么复杂干脆写C效率还比较高,OO语言会使用比较重要吧
作者: uranusjr (←這人是超級笨蛋)   2016-06-11 09:50:00
如果你这么觉得就去写 C 吧, 没人拦你事实是用什么工具都需要了解原理, 否则你永远不能进步
作者: smallmac (洨麦克)   2016-06-11 10:19:00
推原理重要,你不见得当下会用,但总是有派上用场的时刻
作者: LiloHuang (十年一刻)   2016-06-11 10:41:00
计算机科学的知识,不仅要知其然,更要知其所以然。
作者: ripple0129 (perry tsai)   2016-06-11 12:32:00
我倒是觉得除非run的东西预期结果跟你所想的不同才需要翻底层,不然真的学不完OO语言个人觉得研究架构方面的会比较实在
作者: Yshuan (倚絃)   2016-06-11 13:53:00
这跟cpmpiler相关,要去想实作,因而帮助到应用。map系和或list comprehension比较也很有趣。你要做multi thread,就一定得看一下gil实作。我认为至少得知道知识在哪,要用到再去细读即可。
作者: ripple0129 (perry tsai)   2016-06-11 14:13:00
同意,重点就是用到再去深究,时间有限啊QQ
作者: bigpigbigpig (To littlepig with love)   2016-06-11 15:34:00
www.ptt.cc/bbs/C_and_CPP/M.1260555706.A.CA2.htmlhttps://ideone.com/khBIBs好好比较一下上面两个 link :)
作者: adason   2016-06-11 15:57:00
http://www.effectivepython.com 推荐这本书,很多重要 Python 概念跟写法都有提到,书不会太厚。
作者: smallmac (洨麦克)   2016-06-12 00:40:00
推effective Python 有写过再看实力会再上一层
作者: hl4 (Zec)   2016-06-13 22:28:00
一直翻底层也不一定有用,看过两周还是一样忘记
作者: gozule (好冷啊~~)   2016-06-13 23:56:00
我是用python写Uva后,对于效能和实作细节有更深的了解
作者: itis0423 (co)   2016-06-21 02:04:00
但我觉得 immutable 跟你的方向可能又不太一样,我自己认为那是满常见到的东西,是你真的去写个作品就会碰到的我的意思是说比起 trace code 直接想个有兴趣的东西然后implement 应更快可以避免类似 immutable 这类问题答不出来的可能。当然如果你愿意且有兴趣看他的底层 code 当然是最好

Links booklink

Contact Us: admin [ a t ] ucptt.com