V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
gpw1987
V2EX  ›  Python

小弟想学点 python,不知道有啥经典的书籍推荐

  •  
  •   gpw1987 ·
    tianshi1987 · 2016-02-29 11:06:11 +08:00 · 5821 次点击
    这是一个创建于 3220 天前的主题,其中的信息可能已经有所发展或是发生改变。
    小弟注册不久,以前一直学的网络,后来对 linux 等有点兴趣,也断断续续的学了点,现在想学一门语言,看看 python 不错,主要是因为 SS 接触了这个,希望大家能推荐几本 python 的经典入门书籍。以前学过一点 C ,但是基础几乎是 0
    39 条回复    2016-03-01 22:21:01 +08:00
    em70
        1
    em70  
       2016-02-29 11:17:16 +08:00 via iPhone
    Python 并不适合作为入门语言,还是先学 C 或者 java 吧,有大把的入门书可选
    hienchu
        2
    hienchu  
       2016-02-29 12:12:56 +08:00
    Dive into python
    joshz
        3
    joshz  
       2016-02-29 12:35:00 +08:00   ❤️ 2
    学语言最好还是先明确你想要拿它来干什么,你学习网络、对 Linux 感兴趣,是要用 Python 做 SA ?

    如果不想看书,可以先看廖雪峰的教程走一遍 http://www.liaoxuefeng.com/(实战部分不必看了),然后快速看看 https://docs.python.org/3/,主要是查漏补缺式的,最后就是熟悉各种库啦 https://pymotw.com/3/。

    《 Dive into Python 3 》我觉得并不适合没有两门以上语言经验的新手。
    wellsc
        4
    wellsc  
       2016-02-29 12:40:07 +08:00
    @em70 why
    VmuTargh
        5
    VmuTargh  
       2016-02-29 12:42:41 +08:00   ❤️ 3
    loading
        6
    loading  
       2016-02-29 12:51:46 +08:00 via Android
    看着 Flask 文档,改改就能出东西。


    不过建议先学 html …
    xiandao7997
        7
    xiandao7997  
       2016-02-29 12:52:59 +08:00
    右边的 推荐学习书目
    feather12315
        8
    feather12315  
       2016-02-29 12:59:48 +08:00 via Android
    @joshz 我觉得廖雪峰的教程还是“太深入”了。 Python 的特性讲了很多(异常后面的东西,涉及到库的部分),算是远远超出入门水平吧。

    我认为 py 基本语法还是挺简单的,一门入门书,能看一半就应该入门了吧。至于深入, pythonic 的编程就不那么容易了。新的东西建议 pep 文档,能看懂挺有用的(但是很难看懂)
    gpw1987
        9
    gpw1987  
    OP
       2016-02-29 13:08:23 +08:00
    我大概看了下大家的推进都还好,廖雪峰的教程开头还不错,打算先看看再说,有什么不懂得还是要问各位前辈。
    patrickstar
        10
    patrickstar  
       2016-02-29 14:07:59 +08:00
    如果你有其他语言基础,先了解一下子基本语法,然后就是 python 自身的文档,边看编写,遇到问题就翻,暂时用不到的就浏览一下子,实在搞不定就 google
    raawaa
        11
    raawaa  
       2016-02-29 15:37:01 +08:00
    http://composingprograms.com/

    UC Berkeley 大学计算机科学专业本科生入门课程所使用的教材,继承自 sicp 的高贵血统,完全面向零基础。让你学习 python 的同时打下良好的编程基础。你值得拥有。
    tempuseraccount
        12
    tempuseraccount  
       2016-02-29 15:45:48 +08:00
    @hienchu +1 ,我当初学的时候快速浏览了很多教材,最终选了 dive into python 。
    不知道为什么很多人都推 learn python the hard way ,我是看不下去。
    我不过我之前在用 C/C++,有编程基础
    slideclick
        13
    slideclick  
       2016-02-29 16:12:36 +08:00
    http://www.ituring.com.cn/book/1560
    Python 语言及其应用

    python3 程序开发指南 中文版


    http://product.china-pub.com/218456
    Python 编程实践
    amazing4amazing
        14
    amazing4amazing  
       2016-02-29 16:44:02 +08:00
    跟楼主一样的目前还在做"网管" :P,已经决定今年转运维。目前正在学习 LINUX 中。你先把 LINUX 玩转了,再学习 PYTHON 吧。我当时也是想学 PYTHON ,然后我一个运维朋友说:你这跨度太大了。先把 LINUX 玩转,能够把日常的工作都独自解决了,在去学 PYTHON ,然后写点脚本什么的。
    alexinit
        15
    alexinit  
       2016-02-29 16:53:37 +08:00
    请楼主不要轻信一楼,python 很适合当做第一门语言学习门槛低上手快.斯坦福大学计算机专业教的第一门语言都是 python.推荐先看看 learn python the hard way,然后可以看看廖雪峰老师的教程,自己写点东西.
    liqingcan
        16
    liqingcan  
       2016-02-29 16:56:40 +08:00 via Android
    官方文档
    zhunimagebice
        17
    zhunimagebice  
       2016-02-29 16:58:16 +08:00
    @alexinit learn python the hard way 感觉挺浅的。。
    morning
        18
    morning  
       2016-02-29 17:13:14 +08:00
    同推荐<A byte of Python>(《简明 Python 教程》) , 简单有趣,很快就能看完.
    sunway1988
        19
    sunway1988  
       2016-02-29 18:27:28 +08:00
    《 Python 基础教程(第 2 版·修订版)》,买一本实体书,啥也不要想,跟着书,边看边敲例子程序,不要多想了,就这本书,认定了,去看,就入门了。
    alexinit
        20
    alexinit  
       2016-02-29 20:08:28 +08:00
    @zhunimagebice 楼主是从零开始的呀,好多初学者都死在了入门的门槛上.
    lichanglei11
        21
    lichanglei11  
       2016-02-29 20:27:24 +08:00
    em70
        22
    em70  
       2016-02-29 20:54:45 +08:00 via iPhone
    @alexinit
    @wellsc

    首先 python 是一门实用大于理论的语言,很好用,但用来入门可能很多概念不容易搞清楚,比如多态,比如继承,在 IDE 方面也没有公认的神器,让初学者很难积累调试经验。会 C 或者 java ,再学 python 很简单,只会 python 再学其他语言不容易啊
    playniuniu
        23
    playniuniu  
       2016-02-29 21:33:17 +08:00
    Python 是非常适合入门的语言,建议看廖雪峰,讲的不错,新手直接上 python3 吧,甩掉很多包袱
    gpw1987
        24
    gpw1987  
    OP
       2016-02-29 21:38:37 +08:00
    @amazing4amazing 我以前学的是网络,近几年 linux 快速发展,感觉还是要学 linux ,我自己本身是做通信的,但是未来的一些 openstack 和 SDN 等都是软件定义网络,而开源软件最成熟的一般都是 LINUX 或者 UNIX 所以想学点知识,以备后续的发展,当然转运维也是一条好路子,没办法,就喜欢搞 IT ,也想过其他行业,但是我不想放弃,曾经有梦吧
    whisperzzzz
        25
    whisperzzzz  
       2016-02-29 21:59:14 +08:00
    @em70 现在 PyCharm 算是公认了吧……

    另外搞不清楚的概念扔到 C/C++也不会变得好懂的……
    lijsh
        26
    lijsh  
       2016-02-29 22:09:55 +08:00
    我来推一本《深入浅出 Python 》,当初完全小白,只有这本书看进去了。
    Allianzcortex
        27
    Allianzcortex  
       2016-02-29 22:34:27 +08:00   ❤️ 1
    我保证这个问题我在 v2 上看到超过三次了,在 zhihu 上 timeline 上出现的次数超过 10 次了……
    maple
        28
    maple  
       2016-02-29 23:45:27 +08:00   ❤️ 1
    kojirou
        29
    kojirou  
       2016-03-01 06:44:12 +08:00 via iPad
    先跟着教程或者书打一遍代码吧
    wentao
        30
    wentao  
       2016-03-01 08:36:31 +08:00 via Android
    a byte of python 适合入门
    amazing4amazing
        31
    amazing4amazing  
       2016-03-01 09:23:02 +08:00
    @gpw1987 通行貌似还是很阔以的呀,反正我朋友跟我说: Linux 要么运维,要么就再努力 DBA ,不过 DBA 要更难一些。:P 我朋友跟我说 LINUX 现在基本都要求自动化了,不然就没活干。
    xiaket
        32
    xiaket  
       2016-03-01 09:31:20 +08:00
    @em70 手动 downvote. 没提供任何理由, 违背大众认识.
    wellsc
        33
    wellsc  
       2016-03-01 09:43:00 +08:00
    @em70 不懂你的逻辑。谢谢
    alvy
        34
    alvy  
       2016-03-01 10:08:21 +08:00
    python 核心编程不错
    babytomas
        35
    babytomas  
       2016-03-01 10:58:43 +08:00 via Android
    @alexinit 廖雪峰 +1

    廖老师讲的很详细,就是英语有点不标准。(2333...)
    movtoy
        36
    movtoy  
       2016-03-01 11:59:34 +08:00
    @raawaa 看了看还不错。有不少图片。还有动态演示。
    alexinit
        37
    alexinit  
       2016-03-01 14:37:13 +08:00
    @em70 python 公认神器非 VIM 莫属
    Allianzcortex
        38
    Allianzcortex  
       2016-03-01 21:42:51 +08:00
    没有吐槽 LZ 的意思,就是感慨一下为什么关于 Python 的学习问题这么多…… C++/java 就没这么多人问(摔!!!)不愧是 p2ex 的社区

    说正经的,推荐学习资料随便来一本就行,《 Python 核心编程》,《 Python 基础教程》, Python 官方文档。基本语法掌握很快, Pythonic 的技巧还是刷 leetcode 吧,一行反转字符串 ' '.join(s.split()[::-1]),记得 group angrams 的 discuss 里面 yield/map/reduce/filter/list comprehension/ 让人脑洞大开

    最后如果 LZ 要用 Flask/Django 开发, requests/scrapy 写爬虫,一定要多多交流哈
    gpw1987
        39
    gpw1987  
    OP
       2016-03-01 22:21:01 +08:00
    @Allianzcortex 很感谢你的回答, C++和 JAVA 其实也是非常好的语言,只是现在 python 比较火罢了,应用上也比较多,主要现在很多人开始学历 linux ,我在 linux 以及 VPS 领域接触到最多的就是 Python 和 GO ,其他语言可能接触的比较少。很希望能多掌握一些语言,但是时不我待,像我这种半路出家的人,后面还有很多问题要解决。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2848 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 14:44 · PVG 22:44 · LAX 06:44 · JFK 09:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.