zoukankan      html  css  js  c++  java
  • python的模块future用法实例解析

      计算机的知识太多了,很多东西就是一个使用过程中详细积累的过程。最近遇到了一个很久关于future的问题,踩了坑,这里就做个笔记,免得后续再犯类似错误。

      future的作用:把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本中测试一些新版本的特性。说的通俗一点,就是你不用更新python的版本,直接加这个模块,就可以使用python新版本的功能。 下面我们用几个例子来说明它的用法:

    python 2.x print不是一个函数,不能使用help. python3.x print是一个函数,可以使用help.这个时候,就可以看一下future的好处了:

      代码:

    # python2
    #from __future__ import absolute_import, division, print_function
    
    
    #print(3/5)
    #print(3.0/5)
    #print(3//5)
    help(print)

      运行结果:

    ➜  future git:(master) ✗ python future.py
      File "future.py", line 8
        help(print)
                 ^
    SyntaxError: invalid syntax

      报错了,原因就是python2 不支持这个语法。

      上面只需要把第二行的注释打开:

      1 # python2
      2 from __future__ import absolute_import, division, print_function
      3 
      4 
      5 #print(3/5)
      6 #print(3.0/5)
      7 #print(3//5)
      8 help(print)

      结果如下,就对了:

    Help on built-in function print in module __builtin__:
    
    print(...)
        print(value, ..., sep=' ', end='
    ', file=sys.stdout)
        
        Prints the values to a stream, or to sys.stdout by default.
        Optional keyword arguments:
        file: a file-like object (stream); defaults to the current sys.stdout.
        sep:  string inserted between values, default a space.
        end:  string appended after the last value, default a newline.

      另外一个例子:是关于除法的:

    # python2
    #from __future__ import absolute_import, division, print_function
    
    
    print(3/5)
    print(3.0/5)
    print(3//5)
    #help(print)

      结果:

    ➜  future git:(master) ✗ python future.py
    0
    0.6
    0

      把编译宏打开,运算结果:

    ➜  future git:(master) ✗ python future.py
    0.6
    0.6
    0

     看看,python3.x的语法可以使用了。

     有了这两个例子,估计你对future的用法就清晰了吧。

  • 相关阅读:
    Android Static分析
    hdoj 1285 确定比赛名次 【拓扑排序】
    Sqoop2安装记录
    Activiti源代码分析
    SpringBoard 无法启动应用程序(错误:-3)
    关于public、private、protected、internal
    Java基础——Statement与PrepareStatement
    无password身份验证:安全、简单且部署高速
    说说Linux文件权限那些事儿
    Android中Service概述
  • 原文地址:https://www.cnblogs.com/dylancao/p/11904524.html
Copyright © 2011-2022 走看看