Python3.X新特性之print和exec
print 現(xiàn)在是一個函數(shù),不再是一個語句。<語法更為清晰>
實例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執(zhí)行結(jié)果:
????#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執(zhí)行結(jié)果:
實例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中執(zhí)行結(jié)果:
exec
exec()作為函數(shù),只操作globals()和locals()函數(shù)返回的字典。locals()函數(shù)返回的字典實際上是局部變量的一個副本。exec()函數(shù)中進行的賦值只修改了局部變量的這份副本,而非局部變量本身。
實例:
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中執(zhí)行結(jié)果:
????Python3.X中執(zhí)行結(jié)果:
????#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中執(zhí)行結(jié)果:
?
原文鏈接:http://www.maiziedu.com/wiki/python/exec/
?
轉(zhuǎn)載于:https://www.cnblogs.com/space007/p/6027646.html
總結(jié)
以上是生活随笔為你收集整理的Python3.X新特性之print和exec的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uva10369
- 下一篇: python-桶排序