生产环境迈上 Python 3.x

作者: 清醒的cola | 来源:发表于2017-02-17 19:28 被阅读67次

    作为一名老司机,罗列下几个注意点,纪念下匆匆岁月。

    1. print 不再是语句,而是函数
    print("Hello, World!")
    

    大家第一印象,告诫着我们 3.x 不向下兼容。

    1. 整除的问题
      还记得第一次发现1/3 == 0 的震惊吗?

    2. Unicode 问题
      还记得第一次见到乱码时的困惑吗? utf-8 一统天下指日可待。

    3. 升级版 range
      或者不希望新人再去区分 xrange 是什么了?
      而且因为有了 __contains__ 所以可以

    1 in range(3)
    
    1. raise exceptions
      同样需要一个括号
    raise Exception("error")
    
    1. handing exceptions
      现在需要 as 了
    try:
        raise Exception("error")
    exception Exception as err:
        print(err, "error")
    
    1. for 循环控制 变量不再泄露进周围作用域
      取缔了一个黑暗魔法

    2. input()
      跟 range 一样,吞并了 raw_input()

    3. items()
      跟 range 一样,吞并了 iteritems()
      所以

    d = {"a":"a", "b":"b"}  
    print([(v, k) for k, v in d.items()])
    
    1. 函数返回值
      同 range 一样,zip(), map(),filter() 不再返回 list 而是返回迭代对象。可以
    print(list(range(3)))。
    

    总之,旧时代一去不复返,新时代已来临。

    相关文章

      网友评论

        本文标题:生产环境迈上 Python 3.x

        本文链接:https://www.haomeiwen.com/subject/wvukwttx.html