print

  print 现在是一个函数,不再是一个语句。<语法更为清晰>

  实例1

  打开文件 log.txt 以便进行写入并将对象指定给 fid。然后利用 print将一个字符串重定向给文件 fid。

  fid=open("log.txt",'w')

  print("log.txt", file=fid)

  print("hello")

  #fid = open("log.txt", 'w')

  #print>>fid, "log text"

  #print "hello"

  #print("Foo", "Bar", sep="%")

  Python3.X执行结果:

#fid=open("log.txt",'w')

  #print("log.txt", file=fid)

  #print("hello")

  fid = open("log.txt", 'w')

  print>>fid, "log text"

  print "hello"

  #print("Foo", "Bar", sep="%")

  Python2.X执行结果:

  实例2

print("Foo", "Bar", sep="%")

  #fid=open("log.txt",'w')

  #print("log.txt", file=fid)

  #print("hello")

  #fid = open("log.txt", 'w')

  #print>>fid, "log text"

  #print "hello"

  print("Foo", "Bar", sep="%")

  Python3.X中执行结果:

  exec

  exec()作为函数,只操作globals()和locals()函数返回的字典。locals()函数返回的字典实际上是局部变量的一个副本。exec()函数中进行的赋值只修改了局部变量的这份副本,而非局部变量本身。

  

  实例:

  def foo():

  exec('a=4')

  print(a)

  foo()

  #def foo():

  # _locals = locals()

  # exec('a=4',globals(),_locals)

  # a = _locals['a']

  #print (a)

  #foo()

  Python2.X中执行结果:

Python3.X中执行结果:

#def foo():

  # exec('a=4')

  # print(a)

  #foo()

  def foo():

  _locals = locals()

  exec('a=4',globals(),_locals)

  a = _locals['a']

  print (a)

  foo()

  Python3.X中执行结果:

原文链接:http://www.maiziedu.com/wiki/python/exec/

Python3.X新特性之print和exec的更多相关文章

  1. 字符串格式的方法%s、format和python3.6新特性f-string和类型注解

    一.%s msg = '我叫%s,今年%s,性别%s' %('帅哥',18,'男') print(msg) # 我叫帅哥,今年18,性别男 二.format # 三种方式: # 第一种:按顺序接收参数 ...

  2. python3.8 新特性

    https://docs.python.org/3.8/whatsnew/3.8.html python 3.8的新功能本文解释了与3.7相比,python 3.8中的新特性. 有关完整的详细信息,请 ...

  3. Python3.8新特性--PositionalOnly参数

    “理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打拼职场的老司机. 不记得没关系,只需要知道:有这么一位老司机, 穿上西装带大家打拼职场! 操起键盘带大家打磨技术! ...

  4. python3.6 新特性学习

    #支持类型提示 typing { def greeting(name: str) -> str: return 'Hello ' + name #在函数greeting中,参数名称的类型为str ...

  5. 你不得不了解的Python3.x新特性

    从 3.0 到 3.8,Python 3 已经更新了一波又一波,但似乎我们用起来和 2.7 没有太大区别?以前该怎么写 2.7 的代码现在就怎么写,只不过少数表达方式变了而已.在这篇文章中,作者介绍了 ...

  6. python3.8新特性

    海象运算符(赋值运算符) #原来 def choice(): s = ' jsadlk '.strip() res = isinstance(s, int) if res: return 'int' ...

  7. Python3.8新特性-- 海象操作符

    “理论联系实惠,密切联系领导,表扬和自我表扬”——我就是老司机,曾经写文章教各位怎么打拼职场的老司机. 不记得没关系,只需要知道:有这么一位老司机, 穿上西装带大家打拼职场! 操起键盘带大家打磨技术! ...

  8. python3.6新特性

    print(f'{6:^30}') print('\n'.join([' '.join([f'{i}*{j}={i*j:2d}' for j in range(1,i+1)]) for i in ra ...

  9. Python3新特性 类型注解 以及 点点点

    Python3新特性 类型注解 以及 点点点 ... Python3 的新特性 Python 是一种动态语言,变量以及函数的参数是 不区分类型 的 在 函数中使用类型注解 相当于 给 形参的 类型 设 ...

随机推荐

  1. jq验证码换一换

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-e ...

  2. Fiddler- -Composer创建和发送HTTP Request

    Fiddler的功能还有很多, 很多功能都没有被挖掘出来.这次我们介绍Fiddler中的一个非常有用的功能Composer,是用来创建和发送HTTP Request的.Composer的使用方法很简单 ...

  3. Linux环境下apache性能测试工具ab使用详解

    网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环.只有让服务器处在高压情况下,才能真正体现出软件.硬件等各种设置不当所暴露出的问题. 性能测试工具目前最常见的有以下几种:ab.http_lo ...

  4. 打开VS调试不进入开发的网站直接跳转到主页

    重启了熟悉有卸载IE11的,搞了好几个小时 最后把电脑管家里的锁定主页打开就好了! 很久之后  我再锁上  也没有这问题了

  5. c# ConfigurationSection

    怎么把自己的配置文件配置到app.config中? 方案1:在app.config中添加 <!--应用配置--> <appSettings configSource="Co ...

  6. Unity3D 装备系统学习Inventory Pro 2.1.2 总结

    前言 写在最前面,本文未必适合纯新手,但有一些C#开发经验的还是可以看懂的,虽然本人也是一位Unity3D新人,但是本文只是自己在学习Inventory Pro的学习总结,而不是教程,本人觉得要读懂理 ...

  7. android 绘图之Path与Paint详解

    /** * Paint类介绍 * * Paint即画笔,在绘图过程中起到了极其重要的作用,画笔主要保存了颜色, * 样式等绘制信息,指定了如何绘制文本和图形,画笔对象有很多设置方法, * 大体上可以分 ...

  8. elasticsearch客户端连接选择

    elasticsearch支持两种协议: http协议. Native Elasticsearch binary protocol(本地elasticsearch二进制协议):elasticsearc ...

  9. jqueryui引用出错(base is not a constructor,widget no found)

    出错的原因,主要是引用顺序出错. 正确顺序如下: query本身必须放在第一位: <script src="../../../Scripts/Jquery1.7.2/jquery-1. ...

  10. win7 64+python2.7.12安装numpy+scipy+matplotlib+scikit-learn

    python包下载网址 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 1.已经安装python2.7.12,查看scripts里是否有pip.2.7.9版本以上 ...