V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐学习书目
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
xiaoshangmin
V2EX  ›  Python

为什么用过 php 再去自学 python 有点难以入手的感觉

  •  
  •   xiaoshangmin ·
    xiaoshangmin · Mar 18, 2016 via iPhone · 12285 views
    This topic created in 3705 days ago, the information mentioned may be changed or developed.
    如题 How to learn
    64 replies    2016-03-21 13:46:28 +08:00
    MyFaith
        1
    MyFaith  
       Mar 18, 2016 via iPhone
    为什么用过 Python 之后就不想学世界上最好的语言了?
    araraloren
        2
    araraloren  
       Mar 18, 2016
    世界上最好的语言是属于那种风格自由的吧, python 不一样。。
    cxbig
        3
    cxbig  
       Mar 18, 2016
    换参考书,或 YouTube 视频之类,找合适自己的学习材料很重要。
    vagary
        4
    vagary  
       Mar 18, 2016
    @cxbig 严重同意!

    在有基础的情况下学新东西的时候,比的是谁“忘”得多
    shiji
        5
    shiji  
       Mar 18, 2016
    熟悉习惯了一个语言再去写别的都会感觉很不适应。
    我 PHP 写习惯了一段时间,想去写个 JAVA ,连续犯低级错误,很多基本的东西都容易弄混。

    当然想 HTML CSS JS 这三种,任意两个相互之间都不会被取代,也就不容易弄混
    wawehi
        6
    wawehi  
       Mar 18, 2016
    学完 py 压根不想多看 php 一眼
    em70
        7
    em70  
       Mar 18, 2016 via iPhone
    需要多重人格
    bk201
        8
    bk201  
       Mar 18, 2016
    say more just do it
    tabris17
        9
    tabris17  
       Mar 18, 2016
    PHP 作为世界上最好的语言,的确要比 Python 简洁很多,省去了很多华而不实的语法糖,但是 PHP7 最近引入了一些不实用的语法,值得我们警惕
    ctftemp
        10
    ctftemp  
       Mar 18, 2016 via Android
    @tabris17 python 有哪些华而不实的语法糖呢?
    Scholer
        11
    Scholer  
       Mar 18, 2016
    只了解两种语言是不够的 多看几种回来就没有不适感了
    bk201
        12
    bk201  
       Mar 18, 2016
    @tabris17 和 python 比简洁。。 php 果然世界最好的语言。
    xujif
        13
    xujif  
       Mar 18, 2016 via iPhone   ❤️ 1
    反过来, c#c++ java php nodejs 一路写过来,基本都没什么问题。到 python 这真不适应
    没有类型约束,没有接口约束,每次写代码都小心翼翼,不知道你们是怎么处理多人协作这些问题的
    类成员变量没有提前声明语法,每次使用第三方的东西都要一层层看下去
    兼容下问题,不止 py23 问题,举个例子 time datetime pytz ,用第三方的时候光看参数名不跟进去还真不知道它用的哪一套。 tzlocal 判断本地时区还和 time 得出结果不一样,看代码发现完全自成一个体系。
    感觉 py 做一些小项目还好,做比较大的多人协作问题很大,不是不能做,是对程序员的自我要求太高,一不留神就会埋坑
    susanDao
        14
    susanDao  
       Mar 18, 2016
    感觉实际用起来学得更快吧。自己看书学语法什么的,挺没劲的,而且看过之后很快就忘。。。稍微有点基础就直接上手写吧。
    levn
        15
    levn  
       Mar 18, 2016
    对“自我要求”的要求其实就应该算进复杂度里面去哦……
    chenps10
        16
    chenps10  
       Mar 18, 2016
    编程思想扎实的,学啥都快,都是那个道理有些出入原理也是一样的,实现语法不通而已。至于说不习惯的话。。。从 win 刚转来 osx 的时候我也特别不习惯,但是一个月后。。。我觉得 win 不习惯了,哈哈
    chac88
        17
    chac88  
       Mar 18, 2016 via iPhone   ❤️ 2
    chengzhoukun
        18
    chengzhoukun  
       Mar 18, 2016
    @xujif js 坑更多吧
    badaciacia
        19
    badaciacia  
       Mar 18, 2016
    LZ
    跟你说说我的情况 有参考意义
    我现在工作使用的开发语言是 erlang 跟 python 也是完全不着边

    我上周刚玩完了 https://www.codecademy.com 的 python 教程
    上手很快
    周一就自己写了个爬虫 把全公司的美女头像给爬了
    jtam
        20
    jtam  
       Mar 18, 2016
    @badaciacia 怎么判断美不美?
    badaciacia
        21
    badaciacia  
       Mar 18, 2016
    @jtam 我是指公司的女生啊 哈哈哈
    msg7086
        22
    msg7086  
       Mar 18, 2016
    用过 Ruby 以后现在已经陷入用任何别的语言都不习惯的境地了。
    v3u3i87
        23
    v3u3i87  
       Mar 18, 2016
    不是很简单么。。。
    KenGe
        24
    KenGe  
       Mar 18, 2016
    @cxbig youtube 有教程链接?
    aivier
        25
    aivier  
       Mar 18, 2016
    C# > PHP > JS/NodeJS ,感觉很不适应 Python 那样没有大括号的语言....就好像一篇文章没有标点符号,没有段落,没有缩进
    rale
        26
    rale  
       Mar 18, 2016
    没有啊,我以前也学 php ,现在用 python 没啥障碍
    Wangxf
        27
    Wangxf  
       Mar 18, 2016
    用过 js 再也不想用其他语言了
    xujif
        28
    xujif  
       Mar 18, 2016 via iPhone
    @chengzhoukun node 的异步优势让我肯定有点坑可以接受。这个模式很适合做一些消息转发之类的工作
    hbkdsm
        29
    hbkdsm  
       Mar 18, 2016
    practice, practice, practice
    theohateonion
        30
    theohateonion  
       Mar 18, 2016
    我感觉对所有的技术都应该持一种开放的态度,这是一个程序员的基础。不过我写了一段 python 再写一段 java ,转化的过程确实会犯很多低级的错误觉得自己很蠢哈哈哈~
    bigdogbigpig
        31
    bigdogbigpig  
    PRO
       Mar 18, 2016
    讲道理, python 对程序源素质的要求比较高~
    iyaozhen
        32
    iyaozhen  
       Mar 18, 2016 via Android
    感觉没事问题吧,只是偶尔忍不住打分号。然后时间处理有点不习惯
    strahe
        33
    strahe  
       Mar 18, 2016
    1 楼 6 楼正解.
    lxy
        34
    lxy  
       Mar 18, 2016
    @aivier Python 有段落,也有缩进。没有标点的文章,便是诗~ 所以 Python 很优雅,也很暧昧。
    Crossin
        35
    Crossin  
       Mar 18, 2016
    换教材
    zonghua
        36
    zonghua  
       Mar 18, 2016 via iPhone
    学 Python2 到 Python3 才难
    rupert
        37
    rupert  
       Mar 18, 2016 via Android
    鸟哥能喷你们一脸, 但是他懒得喷
    oubushixb
        38
    oubushixb  
       Mar 18, 2016
    @tabris17 高级黑。。。 6666,
    @Wangxf 用了 js 再也不用其他的+1...php 转完 js 后回头看 npm 和 php 的包管理差距...
    gpw1987
        39
    gpw1987  
       Mar 18, 2016
    这个估计先入为主的个概念,就像学会拼音,不太想区学五笔呀。
    pizida
        40
    pizida  
       Mar 18, 2016
    @vagary 忘得多这个观点挺好的。和张无忌学太极一样。忘得一干二净
    kaizixyz
        41
    kaizixyz  
       Mar 18, 2016
    这种情况可以应该学学其他的语言~
    挖出语言设计的思想。
    mikej
        42
    mikej  
       Mar 18, 2016
    我之前也是一直写 php ,最近开始学 python ,打算写一个小的爬虫框架练练手, LZ 有兴趣的话可以来一起玩啊。 https://github.com/itsmikej/Cobweb
    cxbig
        43
    cxbig  
       Mar 18, 2016
    @KenGe 当然有,很多也很杂,我经常用快进抓重点一个个过
    当然如果不差钱还有很多收费资源可以用
    neoblackcap
        44
    neoblackcap  
       Mar 18, 2016
    @xujif 你说的这些确定不是动态语言都有的吗? php 跟 js 不是都一样有这样的缺点吗?
    但有缺点还会有优点,至少动态生成类,在动态语言里面是很简单。
    wizardforcel
        45
    wizardforcel  
       Mar 18, 2016 via Android
    我不是多分号就是少冒号

    有时候会纠结 len()和.length()

    取字典值的时候,老想用点运算符

    其他的还好 毕竟 python 标准库也不差 三方轮子也不少


    我转是因为 php 轮子太少 python 能玩数挖、 nlp 、图形、网络很多很多东西 转过来之后就没再用过 php 了
    xujif
        46
    xujif  
       Mar 18, 2016
    @neoblackcap 动态语言确实都有这个问题,所以对程序员要求更高。
    py 我们直接用 3.5 版本不存在兼容性,但是感觉太自由了,一不小心就犯错,每次用第三方的东西都要先看看源码省的不小心改写了什么。
    php 虽然经常被大家调侃,但是在类型约束上绝不含糊,属于想用 OO 就给你完整的 OO (虽然也有点问题),想自有就给你自由: class 级别有接口约束,成员需要申明,区分 static 变量。方法入参除了基本类型都可以约定类型,基本类型只有 string 和 numeric,拼接用"."相加用"+"没有歧义。
    nodejs 确实越用越爽,现在会感觉异步才是符合思维的,不少小项目都转过来了。
    mengzhuo
        47
    mengzhuo  
       Mar 18, 2016 via iPhone
    程序员不会写个 3 、 4 种,会看逻辑 7 、 8 种语言都不称职啊( hello world 不算)
    做服务端的我现在体会是 Go> Python/Ruby > >PHP > Java > c# > js
    Eleutherios
        48
    Eleutherios  
       Mar 18, 2016 via iPhone
    python 多简单
    两小时就学会了
    虽然我写的代码还是那么水…
    Arainc
        49
    Arainc  
       Mar 18, 2016
    @rupert 为啥鸟哥要喷
    random2case
        50
    random2case  
       Mar 18, 2016
    学 scala 吧,优雅一生~
    xuhaoyangx
        51
    xuhaoyangx  
       Mar 19, 2016
    学了 java ,也在用 php 和 py 。 php py 学起来和用起来都相当舒服,会有一端时间会混一下,如果有个不错的 idea 代码提示,还是能避免。同时觉得有个符合自己的参考教材是最好的
    just1
        52
    just1  
       Mar 19, 2016 via Android
    最早学的 php ,然后学 python ,然后再也不想写 php 了。。
    allenhu
        53
    allenhu  
       Mar 19, 2016 via Android
    Python 如果不使用奇葩的空格缩进,跟大家一样用大括号,还是挺好的😄
    wjfz
        54
    wjfz  
       Mar 19, 2016
    目前也正在从 PHP 学 Python ,简单的感受就是 Python 有 list 、 tuple 、 dict 和 set , PHP 好像就是一个数组[笑 cry]

    语言只是工具,多看看会有一些新的感受。
    之前太限制自己了。
    fy
        55
    fy  
       Mar 19, 2016
    @tabris17 我投五个滑稽币
    wizardforcel
        56
    wizardforcel  
       Mar 19, 2016 via Android
    @xujif

    python 中可以用 assert 和 isinstance 手动实现类型规约。

    由于 python 是多继承,可以拿 class 当接口用。但我觉得动态语言再做接口就太没必要了,于是就学 golang 认为实现了某个方法就等同于实现了某个接口,需要规约的时候调用对象的 hasattr 来断言。
    xiaoshangmin
        57
    xiaoshangmin  
    OP
       Mar 20, 2016 via iPhone
    @wawehi 这么夸张
    xiaoshangmin
        58
    xiaoshangmin  
    OP
       Mar 20, 2016
    @badaciacia 网站打开巨慢
    wingyiu
        59
    wingyiu  
       Mar 20, 2016
    我会三种编程语言: PHP python2 python3.
    xiaoshangmin
        60
    xiaoshangmin  
    OP
       Mar 20, 2016
    @badaciacia 确实不错的网站 请问你有学 pro 的内容吗
    xiaoshangmin
        61
    xiaoshangmin  
    OP
       Mar 20, 2016
    @wingyiu 2 和 3 差别这么大吗 我现在学的 3
    asdwddd
        62
    asdwddd  
       Mar 20, 2016
    @mengzhuo 目前是在用 js 还是 go ?没看清 > 指的是前进还是大于的意思
    mengzhuo
        63
    mengzhuo  
       Mar 21, 2016
    @asdwddd 整体体验,我现在是 C# Go Python ……
    badaciacia
        64
    badaciacia  
       Mar 21, 2016
    @xiaoshangmin pro 的内容我没学习
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2879 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 797ms · UTC 02:31 · PVG 10:31 · LAX 19:31 · JFK 22:31
    ♥ Do have faith in what you're doing.