V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MasterMonkey
V2EX  ›  程序员

每一个 Python 粉丝心中都有一个神 Python,你心中最酷炫的 Python 功能是什么,拿出来晒晒?

  •  
  •   MasterMonkey · 2016-12-17 15:56:58 +08:00 · 5179 次点击
    这是一个创建于 2900 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近三个月,迷上了 Python ,从觉得很 Low 到觉得很赞,现在超喜欢。

    在了解 Buildbot 和 Twister 后,更是喜欢,说说大家心目中 Python 好玩的地方吧。

    我自己自己觉得好玩的几个地方:

    1. python -c "import os;import sys;各种神语句" 2.1 python -m SimpleHTTPServer # 简单 Web 服务器 2.2 python3 -m http.server # 简单 Web 服务器
    2. a if 布尔表达式 else b # 超简洁语法?
    3. ipython #快速实现想法,先实验,再产品,快速迭代没法说
    4. python plus gtk # 跨平台,入门简单,喜欢没法说
    5. [1, 2, 3, 4]+[5, 6, 7, 8] #列表直接相加,超赞赞
    6. Decorators #神奇的 @
    7. async, await #爱你没法说
    8. webpy 简单轻量没法说
    9. Pycharm 超赞、超赞

    不满意的地方:

    1. 怀念 Linq
    2. 怀念 Linq To Object
    3. 怀念 Linq To Xml
    4. GIL 噩梦挥之不去!!
    第 1 条附言  ·  2016-12-17 22:36:52 +08:00
    RedHat 正好有一个博客谈到了 Python 代码的 CodeReview 和如何更加 pythonic 的问题,值得一看:)

    https://access.redhat.com/blogs/766093/posts/2802001
    39 条回复    2016-12-22 21:49:28 +08:00
    102400
        1
    102400  
       2016-12-17 16:48:39 +08:00   ❤️ 4
    这些都有啥啊,楼主你玩玩 Ruby 不得上天?
    MasterMonkey
        2
    MasterMonkey  
    OP
       2016-12-17 16:59:21 +08:00
    @102400 没玩过 Ruby ,唯一一次也是再改 gitlab 配置文件是碰到的。 gitlab 能在短期内起步,并且使用 ruby ,相信 ruby 一定是一门生产力超高的语言,对不对?
    crayygy
        3
    crayygy  
       2016-12-17 17:38:54 +08:00 via iPhone
    之前写过一段时间的 Python ,一开始也差不多,之前一直写 Java 突然接触 Python 感觉要起飞。

    直到后来实习的时候写了半年多的 Ruby ,每天在天上就没下来
    MasterMonkey
        4
    MasterMonkey  
    OP
       2016-12-17 17:47:50 +08:00
    @crayygy ruby 是不是生产力超强?但是语法风格怎么样?不会跟 perl 一样吧,不喜欢 perl ,也不太喜欢 shell! 感觉 python 比较 balance 。

    当然,最怀念的还是丝般顺化的 C#,可惜语言的优劣是次之的,关键看环境、库、解决方案之类的,这点上 C#就不行了!
    dtfm
        5
    dtfm  
       2016-12-17 19:07:49 +08:00
    你对 Python 这个症状,跟我前几天初看 Go 语言一样一样的
    我第一次用 Python 是 惊讶于 a, b =b, a 过了一年多才明白过来这不是语法糖
    MasterMonkey
        6
    MasterMonkey  
    OP
       2016-12-17 19:35:11 +08:00
    @dtfm 刚开始还很讨厌缩进规则,用着用着,越来越喜欢了,居然也不在乎了,真是情人眼里出西施!
    dtfm
        7
    dtfm  
       2016-12-17 19:59:44 +08:00
    @MasterMonkey 你是被降权了么?为什么我收不到你的回复了。
    coolloves
        8
    coolloves  
       2016-12-17 20:21:16 +08:00
    马克一下!
    MasterMonkey
        9
    MasterMonkey  
    OP
       2016-12-17 20:53:05 +08:00
    @dtfm 什么是降权?认为操作吗?
    phrack
        10
    phrack  
       2016-12-17 21:03:13 +08:00
    exec 啊,解析执行太牛逼了,程序的逻辑运行时可以随便修改。

    不过要注意安全,慎用。
    MasterMonkey
        11
    MasterMonkey  
    OP
       2016-12-17 21:09:38 +08:00
    @phrack 顿时就想到了 eval ,哈哈!
    kindjeff
        12
    kindjeff  
       2016-12-17 21:39:38 +08:00
    python -m http.server
    oyjc
        13
    oyjc  
       2016-12-17 21:42:01 +08:00
    正好相反,弃 Python 投 C#(.net core)了
    MasterMonkey
        14
    MasterMonkey  
    OP
       2016-12-17 21:46:00 +08:00
    @oyjc C#颜值绝对高,就是不知道你以后能不能正常上下班了?
    loading
        15
    loading  
       2016-12-17 21:55:29 +08:00 via Android
    Let's Go.
    oyjc
        16
    oyjc  
       2016-12-17 22:23:21 +08:00
    @MasterMonkey 我是计算机民科/业余兴趣,工作不是编程,纯粹做一些自己的东西或利用计算机程序提高效率。
    zhangbohun
        17
    zhangbohun  
       2016-12-17 22:29:49 +08:00 via Android
    print
    MasterMonkey
        18
    MasterMonkey  
    OP
       2016-12-17 22:38:12 +08:00
    @zhangbohun 印象最深的还是%运算符了!!!
    MasterMonkey
        19
    MasterMonkey  
    OP
       2016-12-17 22:42:09 +08:00
    @oyjc 虽然我很想用 C#做一些事情,但是基本上我为 python 的生态系统折服了,放弃了对 C#的那份执着,我只想早下班。我需要的是一个既像 shell ,又像通用语言的东西, python 正合我意:)
    kran
        20
    kran  
       2016-12-18 00:02:17 +08:00 via Android
    python -m json.tool
    唯一在用的
    102400
        21
    102400  
       2016-12-18 01:38:25 +08:00   ❤️ 1
    @MasterMonkey 开发一个项目快速成型的话, ruby python 这些胶水语言都算生产力强吧,然而后期就有得填坑了。假如说你喜欢 py 的理由大多都是关于语法糖的,那么在这点上, py 目前是比 ruby 弱的
    xiuc001
        22
    xiuc001  
       2016-12-18 07:28:10 +08:00 via iPhone
    python 写脚本,写内部项目比较好;如果要分布式,高响应,高吞吐量的还得 java ,虽然 java 比较繁琐
    MasterMonkey
        23
    MasterMonkey  
    OP
       2016-12-18 10:16:53 +08:00
    @xiuc001 为什么 dropbox 用 python, tornado 、 twisted 都不行吗?是不是没用好?
    MasterMonkey
        24
    MasterMonkey  
    OP
       2016-12-18 10:17:41 +08:00
    @102400 对于各种神语言,我还是离远一点好了!
    zhuangzhuang1988
        25
    zhuangzhuang1988  
       2016-12-18 10:23:49 +08:00   ❤️ 2
    修改一下成 Ruby 的

    ruby -e "puts 1", 简单服务器 ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 3000, :DocumentRoot => Dir.pwd).start'
    and or # 超简洁语法?
    pry #快速实现想法,先实验,再产品,快速迭代没法说
    shoes # 跨平台,入门简单,喜欢没法说
    [1, 2, 3, 4]+[5, 6, 7, 8] #Array 直接相加,超赞赞
    Decorators #神奇的 @
    fiber call/cc #爱你没法说
    sinatra 简单轻量没法说
    RubyMind 超赞、超赞
    zhuangzhuang1988
        26
    zhuangzhuang1988  
       2016-12-18 10:24:39 +08:00
    @zhuangzhuang1988 Decorators #神奇的 @ <= 这个忘记修改了, 应是元编程。。
    hbkdsm
        27
    hbkdsm  
       2016-12-18 11:35:27 +08:00
    @zhuangzhuang1988 最后一个是 RubyMine 吧
    zhuangzhuang1988
        28
    zhuangzhuang1988  
       2016-12-18 11:56:34 +08:00
    @hbkdsm 嗯, 写错了。。
    hareandlion
        29
    hareandlion  
       2016-12-18 14:02:03 +08:00
    念念不忘的 import this
    iCyMind
        30
    iCyMind  
       2016-12-18 14:20:02 +08:00
    @MasterMonkey ruby 超像自然语言
    MasterMonkey
        31
    MasterMonkey  
    OP
       2016-12-18 15:55:40 +08:00
    @iCyMind 我感觉 python 已经很自然了,不能想象 ruby 是什么语法了!
    MasterMonkey
        32
    MasterMonkey  
    OP
       2016-12-18 15:55:51 +08:00
    @hareandlion 不懂
    EchoUtopia
        33
    EchoUtopia  
       2016-12-19 09:45:58 +08:00
    @zhuangzhuang1988 python 我也经常用 and or 当?:用
    luobuda
        34
    luobuda  
       2016-12-19 10:11:03 +08:00
    没意思
    lzjun
        35
    lzjun  
       2016-12-19 15:15:57 +08:00
    woostundy
        36
    woostundy  
       2016-12-19 15:19:01 +08:00
    @EchoUtopia 这种写法有没有坑啊? 总感觉不如 x if (bool) else y 清晰
    wwulfric
        37
    wwulfric  
       2016-12-19 18:32:20 +08:00
    @zhuangzhuang1988 pry 还是远远不能跟 ipython 比的,虽然作为 repl pry 更棒,但是 ipython 背后是一大堆的科学计算工具 ……其他都差不多, Ruby 元编程更爽
    EchoUtopia
        38
    EchoUtopia  
       2016-12-21 09:44:39 +08:00
    @woostundy 暂时没发现,至于逻辑是否清晰,习惯就好了
    MasterMonkey
        39
    MasterMonkey  
    OP
       2016-12-22 21:49:28 +08:00
    @zhuangzhuang1988 听你说的这么酷炫,我花了点时间了解了一下 ruby ,看起来挺有特色的,特别是 web 开发的部分。我现在的印象还停留在 google maps base on ruby on rails (书名忘了)这本书的例子里面,当年确实被她的生产力震惊了。

    github 和 gitlab 都是用的 ruby , web 开发的话,估计生产力确实牛牛!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1023 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:05 · PVG 05:05 · LAX 13:05 · JFK 16:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.