Python3.X新特性之print和exec

本文介绍了Python中打印函数的使用方法及变化,并通过实例展示了如何将输出重定向到文件。此外,还深入探讨了exec函数的工作原理及其在不同Python版本间的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  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/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值