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. js中eval() 方法的使用以及一些特殊的使用方式

    1.eval方法只能在非严格模式中进行使用,在use strict中是不允许使用这个方法的. 2.eval函数接收一个参数s,如果s不是字符串,则直接返回s.否则执行s语句.如果s语句执行结果是一个值 ...

  2. web前端开发工程师,你了解吗?

    web前端开发工程师可以说是一个全新的职业,在IT整个行业中真正受到重视的时间没有超过5年,也正因为这样,大家越来越想了解web前端工程师的前景究竟怎么样?web前端培训就业前景如何?web前端工程师 ...

  3. Python开发【程序】:计算器

    开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...

  4. JS中isPrototypeOf 和hasOwnProperty 的区别

    1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的原型链中,是则返回true,否则返回false. 格式如下: object ...

  5. iOS,iPhone各机型设备号,屏幕宽高,屏幕模式

    //获取设备型号 NSString *DeviceModel= [[UIDevice currentDevice] model]; //获取设备系统版本号 NSString *DeviceIOSVer ...

  6. ORA-25153: Temporary Tablespace is Empty

    在一测试环境做测试的时候发生以下错误: SQL> exec dbms_stats.gather_table_stats(ownname=>'SYS',tabname=>'TT',me ...

  7. java虚拟机内部介绍

    一.介绍 java 的内存管理和垃圾回收在某种程度是同一个问题来着.对于java程序员来说,在虚拟机自动内存管理机制的帮助下,不在需要为每一个new操作去写配对的delete/free代码,不容易出现 ...

  8. Latex 学习

    Latex 学习 @(05.2 Latex)[latex][基础教程] 这篇文章是关于latex基础教程.pdf的一个总结. 基本知识 基础 1. 空格 多个空格会被视为一个空格 单个回车会被视为一个 ...

  9. [原创] Linux下几种文件传输命令 sz rz sftp scp介绍

    Linux下几种文件传输命令 sz rz sftp scp介绍 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具.由于它是基于SSH的,会在传输过程中对用户的密码.数据等 ...

  10. html5,进度条

    <form action="" id="myform">        <progress value="20" max= ...