为什么用过 php 再去自学 python 有点难以入手的感觉 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard ay
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 2016-03-18 08:12:06 +08:00 via iPhone 11882 次点击
    这是一个创建于 3498 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题 How to learn
    64 条回复    2016-03-21 13:46:28 +08:00
    MyFaith
        1
    MyFaith  
       2016-03-18 08:15:13 +08:00 via iPhone
    为什么用过 Python 之后就不想学世界上最好的语言了?
    araraloren
        2
    araraloren  
       2016-03-18 08:35:47 +08:00
    世界上最好的语言是属于那种风格自由的吧, python 不一样。。
    cxbig
        3
    cxbig  
       2016-03-18 08:36:15 +08:00
    换参考书,或 YouTube 视频之类,找合适自己的学习材料很重要。
    vagary
        4
    vagary  
       2016-03-18 08:39:01 +08:0
    @cxbig 严重同意!

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

    当然想 HTML CSS JS 这三种,任意两个相互之间都不会被取代,也就不容易弄混
    wawehi
        6
    wawehi  
       2016-03-18 08:41:11 +08:00
    学完 py 压根不想多看 php 一眼
    em70
        7
    em70  
       2016-03-18 08:47:55 +08:00 via iPhone
    需要多重人格
    bk201
        8
    bk201  
       2016-03-18 08:54:37 +08:00
    say more just do it
    tabris17
        9
    tabris17  
       2016-03-18 09:08:47 +08:00
    PHP 作为世界上最好的语言,的确要比 Python 简洁很多,省去了很多华而不实的语法糖,但是 PHP7 最近引入了一些不实用的语法,值得我们警惕
    ctftemp
        10
    ctftemp  
       2016-03-18 09:23:47 +08:00 via Android
    @tabris17 python 有哪些华而不实的语法糖呢?
    Scholer
        11
    Scholer  
       2016-03-18 09:24:46 +08:00
    只了解两种语言是不够的 多看几种回来就没有不适感了
    bk201
        12
    bk201  
       2016-03-18 09:28:58 +08:00
    @tabris17 和 python 比简洁。。 php 果然世界最好的语言。
    xujif
        13
    xujif  
       2016-03-18 09:34:51 +08:00 via iPhone   1
    反过来, c#c++ java php nodejs 一路写过来,基本都没什么问题。到 python 这真不适应
    没有类型约束,没有接口约束,每次写代码都小心翼翼,不知道你们是怎么处理多人协作这些问题的
    类成员变量没有提前声明语法,每次使用第三方的东西都要一层层看下去
    兼容下问题,不止 py23 问题,举个例子 time datetime pytz ,用第三方的时候光看参数名不跟进去还真不知道它用的哪一套。 tzlocal 判断本地时区还和 time 得出结果不一样,看代码发现完全自成一个体系。
    感觉 py 做一些小项目还好,做比较大的多人协作问题很大,不是不能做,是对程序员的自我要求太高,一不留神就会埋坑
    susanDao
        14
    susanDao  
       2016-03-18 09:36:31 +08:00
    感觉实际用起来学得更快吧。自己看书学语法什么的,挺没劲的,而且看过之后很快就忘。。。稍微有点基础就直接上手写吧。
    levn
        15
    levn  
       2016-03-18 09:37:26 +08:00
    对“自我要求”的要求其实就应该算进复杂度里面去哦……
    chenps10
        16
    chenps10  
       2016-03-18 09:40:22 +08:00
    编程思想扎实的,学啥都快,都是那个道理有些出入原理也是一样的,实现语法不通而已。至于说不习惯的话。。。从 win 刚转来 osx 的时候我也特别不习惯,但是一个月后。。。我觉得 win 不习惯了,哈哈
    ty0716
        17
    ty0716  
       2016-03-18 09:47:07 +08:00 via iPhone   2
    chengzhoukun
        18
    chengzhoukun  
       2016-03-18 09:56:58 +08:00
    @xujif js 坑更多吧
    jtam
        20
    jtam  
       2016-03-18 10:10:22 +08:00
    @badaciacia 怎么判断美不美?
    badaciacia
        21
    badaciacia  
       2016-03-18 10:15:39 +08:00
    @jtam 我是指公司的女生啊 哈哈哈
    msg7086
        22
    msg7086  
       2016-03-18 10:18:23 +08:00
    用过 Ruby 以后现在已经陷入用任何别的语言都不习惯的境地了。
    v3u3i87
        23
    v3u3i87  
       2016-03-18 10:22:01 +08:00
    不是很简单么。。。
    KenGe
        24
    KenGe  
       2016-03-18 10:23:25 +08:00
    @cxbig youtube 有教程链接?
    aivier
        25
    aivier  
       2016-03-18 10:23:50 +08:00
    C# > PHP > JS/NodeJS ,感觉很不适应 Python 那样没有大括号的语言....就好像一篇文章没有标点符号,没有段落,没有缩进
    rale
        26
    rale  
       2016-03-18 10:25:19 +08:00
    没有啊,我以前也学 php ,现在用 python 没啥障碍
    Wangxf
        27
    Wangxf  
       2016-03-18 10:35:09 +08:00
    用过 js 再也不想用其他语言了
    xujif
        28
    xujif  
       2016-03-18 10:50:59 +08:00 via iPhone
    @chengzhoukun node 的异步优势让我肯定有点坑可以接受。这个模式很适合做一些消息转发之类的工作
    hbkdsm
        29
    hbkdsm  
       2016-03-18 11:01:34 +08:00
    practice, practice, practice
    theohateonion
        30
    theohateonion  
       2016-03-18 11:05:43 +08:00
    我感觉对所有的技术都应该持一种开放的态度,这是一个程序员的基础。不过我写了一段 python 再写一段 java ,转化的过程确实会犯很多低级的错误觉得自己很蠢哈哈哈~
    mazyi
        31
    mazyi  
    PRO
       2016-03-18 11:13:40 +08:00
    讲道理, python 对程序源素质的要求比较高~
    iyaozhen
        32
    iyaozhen  
       2016-03-18 11:24:05 +08:00 via Android
    感觉没事问题吧,只是偶尔忍不住打分号。然后时间处理有点不习惯
    strahe
        33
    strahe  
       2016-03-18 11:26:08 +08:00
    1 楼 6 楼正解.
    lxy
        34
    lxy  
       2016-03-18 11:29:29 +08:00
    @aivier Python 有段落,也有缩进。没有标点的文章,便是诗~ 所以 Python 很优雅,也很暧昧。
    Crossin
        35
    Crossin  
       2016-03-18 13:00:38 +08:00
    换教材
    zonghua
        36
    zonghua  
       2016-03-18 13:06:09 +08:00 via iPhone
    学 Python2 到 Python3 才难
    rupert
        37
    rupert  
       2016-03-18 13:50:19 +08:00 via Android
    鸟哥能喷你们一脸, 但是他懒得喷
    oubushixb
        38
    oubushixb  
       2016-03-18 14:01:32 +08:00
    @tabris17 高级黑。。。 6666,
    @Wangxf 用了 js 再也不用其他的+1...php 转完 js 后回头看 npm 和 php 的包管理差距...
    gpw1987
        39
    gpw1987  
       2016-03-18 14:16:54 +08:00
    这个估计先入为主的个概念,就像学会拼音,不太想区学五笔呀。
    pizida
        40
    pizida  
       2016-03-18 14:22:21 +08:00
    @vagary 忘得多这个观点挺好的。和张无忌学太极一样。忘得一干二净
    kaizixyz
        41
    kaizixyz  
       2016-03-18 14:41:44 +08:00
    这种情况可以应该学学其他的语言~
    挖出语言设计的思想。
    mikej
        42
    mikej  
       2016-03-18 16:11:27 +08:00
    我之前也是一直写 php ,最近开始学 python ,打算写一个小的爬虫框架练练手, LZ 有兴趣的话可以来一起玩啊。 https://github.com/itsmikej/Cobweb
    cxbig
        43
    cxbig  
       2016-03-18 17:08:10 +08:00
    @KenGe 当然有,很多也很杂,我经常用快进抓重点一个个过
    当然如果不差钱还有很多收费资源可以用
    neoblackcap
        44
    neoblackcap  
       2016-03-18 17:11:07 +08:00
    @xujif 你说的这些确定不是动态语言都有的吗? php 跟 js 不是都一样有这样的缺点吗?
    但有缺点还会有优点,至少动态生成类,在动态语言里面是很简单。
    wizardforcel
        45
    wizardforcel  
       2016-03-18 17:52:28 +08:00 via Android
    我不是多分号就是少冒号

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

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

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


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

    语言只是工具,多看看会有一些新的感受。
    之前太限制自己了。
    fy
        55
    fy  
       2016-03-19 16:44:50 +08:00
    @tabris17 我投五个滑稽币
    wizardforcel
        56
    wizardforcel  
       2016-03-19 19:24:09 +08:00 via Android
    @xujif

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

    由于 python 是多继承,可以拿 class 当接口用。但我觉得动态语言再做接口就太没必要了,于是就学 golang 认为实现了某个方法就等同于实现了某个接口,需要规约的时候调用对象的 hasattr 来断言。
    xiaoshangmin
        57
    xiaoshangmin  
    OP
       2016-03-20 11:31:05 +08:00 via iPhone
    @wawehi 这么夸张
    xiaoshangmin
        58
    xiaoshangmin  
    OP
       2016-03-20 17:51:19 +08:00
    @badaciacia 网站打开巨慢
    wingyiu
        59
    wingyiu  
       2016-03-20 18:49:09 +08:00
    我会三种编程语言: PHP python2 python3.
    xiaoshangmin
        60
    xiaoshangmin  
    OP
       2016-03-20 20:14:41 +08:00
    @badaciacia 确实不错的网站 请问你有学 pro 的内容吗
    xiaoshangmin
        61
    xiaoshangmin  
    OP
       2016-03-20 20:15:16 +08:00
    @wingyiu 2 和 3 差别这么大吗 我现在学的 3
    asdwddd
        62
    asdwddd  
       2016-03-20 20:34:23 +08:00
    @mengzhuo 目前是在用 js 还是 go ?没看清 > 指的是前进还是大于的意思
    mengzhuo
        63
    mengzhuo  
       2016-03-21 09:54:32 +08:00
    @asdwddd 整体体验,我现在是 C# Go Python ……
    badaciacia
        64
    badaciacia  
       2016-03-21 13:46:28 +08:00
    @xiaoshangmin pro 的内容我没学习
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1123 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 17:47 PVG 01:47 LAX 10:47 JFK 13:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86