美文网首页
Python 中的 __future__ 以及 FLAGS

Python 中的 __future__ 以及 FLAGS

作者: 酷酷滴小爽哥 | 来源:发表于2018-08-28 17:13 被阅读0次

    1 .这个 __feature__ 啥子意思?

    在开头加上 from __future__ import print_function 这句之后,即使在 python2.X,使用 print 就得像 python3.X 那样加括号使用。python2.X 中 print 不需要括号,而在 python3.X 中则需要。

    # python2.7
    print "Hello world"
    
    # python3
    print("Hello world")
    

    如果某个版本中出现了某个新的功能特性,而且这个特性和当前版本中使用的不兼容,也就是它在该版本中不是语言标准,那么我如果想要使用的话就需要从 future模块导入。

    其他例子:

    from __future__ import division ,
    from __future__ import absolute_import ,
    from __future__ import with_statement 。等等
    

    加上这些,如果你的python版本是python2.X,你也得按照python3.X那样使用这些函数。

    2 . 这个 flags又是什么鬼?

    import tensorflow as tf
     
    #第一个是参数名称,第二个参数是默认值,第三个是参数描述
    
    tf.app.flags.DEFINE_string('str_name', 'def_v_1',"descrip1")
    tf.app.flags.DEFINE_integer('int_name', 10,"descript2")
    tf.app.flags.DEFINE_boolean('bool_name', False, "descript3")
    
    FLAGS = tf.app.flags.FLAGS
     
    #必须带参数,否则:'TypeError: main() takes no arguments (1 given)';   main的参数名随意定义,无要求
    def main(_):  
        print(FLAGS.str_name)
        print(FLAGS.int_name)
        print(FLAGS.bool_name)
     
    if __name__ == '__main__':
        tf.app.run()  #执行main函数
    
    [root@AliHPC-G41-211 test]# python tt.py
    def_v_1
    10
    False
    [root@AliHPC-G41-211 test]# python tt.py --str_name test_str --int_name 99 --bool_name True
    test_str
    99
    True
    

    相关文章

      网友评论

          本文标题:Python 中的 __future__ 以及 FLAGS

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