1 描述

把一个字符串当成语句执行

exec()  执行储存在字符串或文件中的 Python 语句,相比于  eval() , exec() 可以执行更复杂的 Python 代码。

exec函数和eval函数类似,也是执行动态语句

只不过eval函数只用于执行表达式求值,

        而exec函数主要用于执行语句块。

>>> eval("a=1+2")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1
    a=1+2
     ^
SyntaxError: invalid syntax  #无效语法,字符串无法执行

>>> exec("a=1+2")
>>> a
3

2 语法

exec(object[, globals[, locals]])

object:必选参数,表示需要被指定的Python代码。它必须是字符串或code对象。如果object是一个字符串,该字符串会先被解析为一组Python语句,然后在执行(除非发生语法错误)。如果object是一个code对象,那么它只是被简单的执行。

   = 字符串是Python的合法语句

globals:可选参数,表示全局命名空间(存放全局变量),如果被提供,则必须是一个字典对象。

   = 表达式使用的全局变量 字典    globals()

locals:可选参数,表示当前局部命名空间(存放局部变量),如果被提供,可以是任何映射对象。如果该参数被忽略,那么它将会取与globals相同的值。

   = 表达式使用的局部变量 字典  等同globals(第二个参数值)

    有locals参数时,优先执行该参数

globals()

功能:收集全局变量
参数:无
返回值:得到一个收集全局变量的字典(会包含系统的内置变量)

locals()

功能:收集局部变量
参数:无
返回值:得到一个收集局部变量的字典

3 返回值

None

但是执行后,local或globals 的self 采用字典形式输出

4 练习

x = 100
y = 200

s = '''
a = x + y
print(a)
    '''
exec(s)

运行

300

x = 100
y = 200

ls = {'x':1,'y':2}
gs = {'x':3,'y':4}
exec('a = x + y',ls,gs)
print("ls =",ls)     #ls = {'x': 1, 'y': 2,}
print("----------------------")
print("gs =",gs)    #gs = {'x': 3, 'y': 4, 'a': 7}
print("======================")

ls = {'x':1,'y':2}
gs = {'x':3,'y':4}
exec('a = x + y',None,gs)
print("ls =",ls)    #ls = {'x': 1, 'y': 2}
print("----------------------")
print("gs =",gs)    #gs = {'x': 3, 'y': 4, 'a': 7}
print("======================")

ls = {'x':1,'y':2}
gs = {'x':3,'y':4}
exec('a = x + y',ls)
print("ls =",ls)    #ls = {'x': 1, 'y': 2, 'a': 3,}
print("----------------------")
print("gs =",gs)    #gs = {'x': 3, 'y': 4}
print("======================")

ls = {'x':1,'y':2}
gs = {'x':3,'y':4}
exec('a = x + y',ls,None)
print("ls =",ls)     #ls = {'x': 1, 'y': 2, 'a': 3, }
print("----------------------")
print("gs =",gs)    #gs = {'x': 3, 'y': 4}
print("======================")

实际上,在上述代码输出过程中,全局变量中包含了很多内置全局变量。上面的代码实际输出为:

ls = {'x': 1, 'y': 2, '__builtins__': {'id': <built-in function id>, 'min': <built-in function min>, 'license': Type license() to see the full license text, 'all': <built-in function all>, 'SyntaxError': <class 'SyntaxError'>, 'UnicodeEncodeError': <class 'UnicodeEncodeError'>, 'SyntaxWarning': <class 'SyntaxWarning'>, 'delattr': <built-in function delattr>, 'OverflowError': <class 'OverflowError'>, 'RecursionError': <class 'RecursionError'>, 'BaseException': <class 'BaseException'>, 'FileExistsError': <class 'FileExistsError'>, 'help': Type help() for interactive help, or help(object) for help about object., 'dict': <class 'dict'>, 'FutureWarning': <class 'FutureWarning'>, 'IOError': <class 'OSError'>, 'NotADirectoryError': <class 'NotADirectoryError'>, 'complex': <class 'complex'>, 'ord': <built-in function ord>, 'print': <built-in function print>, 'property': <class 'property'>, 'callable': <built-in function callable>, 'memoryview': <class 'memoryview'>, 'set': <class 'set'>, 'FileNotFoundError': <class 'FileNotFoundError'>, 'ReferenceError': <class 'ReferenceError'>, 'BufferError': <class 'BufferError'>, 'ProcessLookupError': <class 'ProcessLookupError'>, 'chr': <built-in function chr>, 'range': <class 'range'>, 'pow': <built-in function pow>, 'IndentationError': <class 'IndentationError'>, 'ConnectionResetError': <class 'ConnectionResetError'>, 'TimeoutError': <class 'TimeoutError'>, 'InterruptedError': <class 'InterruptedError'>, 'int': <class 'int'>, 'ConnectionError': <class 'ConnectionError'>, 'input': <built-in function input>, 'FloatingPointError': <class 'FloatingPointError'>, 'NotImplementedError': <class 'NotImplementedError'>, 'bytes': <class 'bytes'>, 'staticmethod': <class 'staticmethod'>, 'isinstance': <built-in function isinstance>, 'False': False, 'AttributeError': <class 'AttributeError'>, 'ImportWarning': <class 'ImportWarning'>, 'SystemExit': <class 'SystemExit'>, '__import__': <built-in function __import__>, 'UnicodeTranslateError': <class 'UnicodeTranslateError'>, 'IsADirectoryError': <class 'IsADirectoryError'>, '__doc__': "Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the `nil' object; Ellipsis represents `...' in slices.", 'abs': <built-in function abs>, 'filter': <class 'filter'>, 'slice': <class 'slice'>, 'tuple': <class 'tuple'>, 'iter': <built-in function iter>, 'object': <class 'object'>, 'eval': <built-in function eval>, 'ConnectionRefusedError': <class 'ConnectionRefusedError'>, 'StopIteration': <class 'StopIteration'>, 'issubclass': <built-in function issubclass>, 'sum': <built-in function sum>, 'max': <built-in function max>, 'enumerate': <class 'enumerate'>, 'len': <built-in function len>, 'locals': <built-in function locals>, 'UserWarning': <class 'UserWarning'>, 'NameError': <class 'NameError'>, 'Exception': <class 'Exception'>, '__spec__': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>), 'bin': <built-in function bin>, 'ResourceWarning': <class 'ResourceWarning'>, 'any': <built-in function any>, 'LookupError': <class 'LookupError'>, 'DeprecationWarning': <class 'DeprecationWarning'>, 'list': <class 'list'>, 'ChildProcessError': <class 'ChildProcessError'>, 'next': <built-in function next>, 'Warning': <class 'Warning'>, 'ImportError': <class 'ImportError'>, '__build_class__': <built-in function __build_class__>, 'exit': Use exit() or Ctrl-D (i.e. EOF) to exit, 'str': <class 'str'>, 'classmethod': <class 'classmethod'>, 'globals': <built-in function globals>, 'BlockingIOError': <class 'BlockingIOError'>, 'quit': Use quit() or Ctrl-D (i.e. EOF) to exit, 'UnicodeError': <class 'UnicodeError'>, 'oct': <built-in function oct>, 'credits':     Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
    for supporting Python development.  See www.python.org for more information., 'setattr': <built-in function setattr>, 'ascii': <built-in function ascii>, 'StopAsyncIteration': <class 'StopAsyncIteration'>, 'exec': <built-in function exec>, 'UnicodeWarning': <class 'UnicodeWarning'>, 'ZeroDivisionError': <class 'ZeroDivisionError'>, 'EnvironmentError': <class 'OSError'>, 'round': <built-in function round>, 'super': <class 'super'>, 'RuntimeWarning': <class 'RuntimeWarning'>, 'TypeError': <class 'TypeError'>, 'TabError': <class 'TabError'>, 'reversed': <class 'reversed'>, 'SystemError': <class 'SystemError'>, 'float': <class 'float'>, 'hasattr': <built-in function hasattr>, 'PendingDeprecationWarning': <class 'PendingDeprecationWarning'>, 'IndexError': <class 'IndexError'>, 'None': None, 'repr': <built-in function repr>, 'True': True, 'ValueError': <class 'ValueError'>, 'sorted': <built-in function sorted>, 'format': <built-in function format>, 'frozenset': <class 'frozenset'>, 'KeyError': <class 'KeyError'>, 'GeneratorExit': <class 'GeneratorExit'>, 'UnicodeDecodeError': <class 'UnicodeDecodeError'>, 'map': <class 'map'>, 'bool': <class 'bool'>, 'OSError': <class 'OSError'>, 'hex': <built-in function hex>, 'PermissionError': <class 'PermissionError'>, 'bytearray': <class 'bytearray'>, 'RuntimeError': <class 'RuntimeError'>, 'open': <built-in function open>, 'vars': <built-in function vars>, 'hash': <built-in function hash>, 'compile': <built-in function compile>, 'getattr': <built-in function getattr>, 'type': <class 'type'>, 'KeyboardInterrupt': <class 'KeyboardInterrupt'>, 'AssertionError': <class 'AssertionError'>, 'BytesWarning': <class 'BytesWarning'>, 'zip': <class 'zip'>, 'divmod': <built-in function divmod>, 'MemoryError': <class 'MemoryError'>, 'ConnectionAbortedError': <class 'ConnectionAbortedError'>, '__debug__': True, 'dir': <built-in function dir>, '__name__': 'builtins', 'BrokenPipeError': <class 'BrokenPipeError'>, 'copyright': Copyright (c) 2001-2016 Python Software Foundation.
All Rights Reserved.

Copyright (c) 2000 BeOpen.com.
All Rights Reserved.

Copyright (c) 1995-2001 Corporation for National Research Initiatives.
All Rights Reserved.

Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
All Rights Reserved., 'ArithmeticError': <class 'ArithmeticError'>, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, 'Ellipsis': Ellipsis, '__package__': '', 'UnboundLocalError': <class 'UnboundLocalError'>, 'EOFError': <class 'EOFError'>, 'NotImplemented': NotImplemented}}
----------------------
gs = {'x': 3, 'y': 4, 'a': 7}
======================
ls = {'x': 1, 'y': 2}
----------------------
gs = {'x': 3, 'y': 4, 'a': 7}
======================
ls = {'x': 1, 'y': 2, 'a': 3, '__builtins__': {'id': <built-in function id>, 'min': <built-in function min>, 'license': Type license() to see the full license text, 'all': <built-in function all>, 'SyntaxError': <class 'SyntaxError'>, 'UnicodeEncodeError': <class 'UnicodeEncodeError'>, 'SyntaxWarning': <class 'SyntaxWarning'>, 'delattr': <built-in function delattr>, 'OverflowError': <class 'OverflowError'>, 'RecursionError': <class 'RecursionError'>, 'BaseException': <class 'BaseException'>, 'FileExistsError': <class 'FileExistsError'>, 'help': Type help() for interactive help, or help(object) for help about object., 'dict': <class 'dict'>, 'FutureWarning': <class 'FutureWarning'>, 'IOError': <class 'OSError'>, 'NotADirectoryError': <class 'NotADirectoryError'>, 'complex': <class 'complex'>, 'ord': <built-in function ord>, 'print': <built-in function print>, 'property': <class 'property'>, 'callable': <built-in function callable>, 'memoryview': <class 'memoryview'>, 'set': <class 'set'>, 'FileNotFoundError': <class 'FileNotFoundError'>, 'ReferenceError': <class 'ReferenceError'>, 'BufferError': <class 'BufferError'>, 'ProcessLookupError': <class 'ProcessLookupError'>, 'chr': <built-in function chr>, 'range': <class 'range'>, 'pow': <built-in function pow>, 'IndentationError': <class 'IndentationError'>, 'ConnectionResetError': <class 'ConnectionResetError'>, 'TimeoutError': <class 'TimeoutError'>, 'InterruptedError': <class 'InterruptedError'>, 'int': <class 'int'>, 'ConnectionError': <class 'ConnectionError'>, 'input': <built-in function input>, 'FloatingPointError': <class 'FloatingPointError'>, 'NotImplementedError': <class 'NotImplementedError'>, 'bytes': <class 'bytes'>, 'staticmethod': <class 'staticmethod'>, 'isinstance': <built-in function isinstance>, 'False': False, 'AttributeError': <class 'AttributeError'>, 'ImportWarning': <class 'ImportWarning'>, 'SystemExit': <class 'SystemExit'>, '__import__': <built-in function __import__>, 'UnicodeTranslateError': <class 'UnicodeTranslateError'>, 'IsADirectoryError': <class 'IsADirectoryError'>, '__doc__': "Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the `nil' object; Ellipsis represents `...' in slices.", 'abs': <built-in function abs>, 'filter': <class 'filter'>, 'slice': <class 'slice'>, 'tuple': <class 'tuple'>, 'iter': <built-in function iter>, 'object': <class 'object'>, 'eval': <built-in function eval>, 'ConnectionRefusedError': <class 'ConnectionRefusedError'>, 'StopIteration': <class 'StopIteration'>, 'issubclass': <built-in function issubclass>, 'sum': <built-in function sum>, 'max': <built-in function max>, 'enumerate': <class 'enumerate'>, 'len': <built-in function len>, 'locals': <built-in function locals>, 'UserWarning': <class 'UserWarning'>, 'NameError': <class 'NameError'>, 'Exception': <class 'Exception'>, '__spec__': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>), 'bin': <built-in function bin>, 'ResourceWarning': <class 'ResourceWarning'>, 'any': <built-in function any>, 'LookupError': <class 'LookupError'>, 'DeprecationWarning': <class 'DeprecationWarning'>, 'list': <class 'list'>, 'ChildProcessError': <class 'ChildProcessError'>, 'next': <built-in function next>, 'Warning': <class 'Warning'>, 'ImportError': <class 'ImportError'>, '__build_class__': <built-in function __build_class__>, 'exit': Use exit() or Ctrl-D (i.e. EOF) to exit, 'str': <class 'str'>, 'classmethod': <class 'classmethod'>, 'globals': <built-in function globals>, 'BlockingIOError': <class 'BlockingIOError'>, 'quit': Use quit() or Ctrl-D (i.e. EOF) to exit, 'UnicodeError': <class 'UnicodeError'>, 'oct': <built-in function oct>, 'credits':     Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
    for supporting Python development.  See www.python.org for more information., 'setattr': <built-in function setattr>, 'ascii': <built-in function ascii>, 'StopAsyncIteration': <class 'StopAsyncIteration'>, 'exec': <built-in function exec>, 'UnicodeWarning': <class 'UnicodeWarning'>, 'ZeroDivisionError': <class 'ZeroDivisionError'>, 'EnvironmentError': <class 'OSError'>, 'round': <built-in function round>, 'super': <class 'super'>, 'RuntimeWarning': <class 'RuntimeWarning'>, 'TypeError': <class 'TypeError'>, 'TabError': <class 'TabError'>, 'reversed': <class 'reversed'>, 'SystemError': <class 'SystemError'>, 'float': <class 'float'>, 'hasattr': <built-in function hasattr>, 'PendingDeprecationWarning': <class 'PendingDeprecationWarning'>, 'IndexError': <class 'IndexError'>, 'None': None, 'repr': <built-in function repr>, 'True': True, 'ValueError': <class 'ValueError'>, 'sorted': <built-in function sorted>, 'format': <built-in function format>, 'frozenset': <class 'frozenset'>, 'KeyError': <class 'KeyError'>, 'GeneratorExit': <class 'GeneratorExit'>, 'UnicodeDecodeError': <class 'UnicodeDecodeError'>, 'map': <class 'map'>, 'bool': <class 'bool'>, 'OSError': <class 'OSError'>, 'hex': <built-in function hex>, 'PermissionError': <class 'PermissionError'>, 'bytearray': <class 'bytearray'>, 'RuntimeError': <class 'RuntimeError'>, 'open': <built-in function open>, 'vars': <built-in function vars>, 'hash': <built-in function hash>, 'compile': <built-in function compile>, 'getattr': <built-in function getattr>, 'type': <class 'type'>, 'KeyboardInterrupt': <class 'KeyboardInterrupt'>, 'AssertionError': <class 'AssertionError'>, 'BytesWarning': <class 'BytesWarning'>, 'zip': <class 'zip'>, 'divmod': <built-in function divmod>, 'MemoryError': <class 'MemoryError'>, 'ConnectionAbortedError': <class 'ConnectionAbortedError'>, '__debug__': True, 'dir': <built-in function dir>, '__name__': 'builtins', 'BrokenPipeError': <class 'BrokenPipeError'>, 'copyright': Copyright (c) 2001-2016 Python Software Foundation.
All Rights Reserved.

Copyright (c) 2000 BeOpen.com.
All Rights Reserved.

Copyright (c) 1995-2001 Corporation for National Research Initiatives.
All Rights Reserved.

Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
All Rights Reserved., 'ArithmeticError': <class 'ArithmeticError'>, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, 'Ellipsis': Ellipsis, '__package__': '', 'UnboundLocalError': <class 'UnboundLocalError'>, 'EOFError': <class 'EOFError'>, 'NotImplemented': NotImplemented}}
----------------------
gs = {'x': 3, 'y': 4}
======================
ls = {'x': 1, 'y': 2, 'a': 3, '__builtins__': {'id': <built-in function id>, 'min': <built-in function min>, 'license': Type license() to see the full license text, 'all': <built-in function all>, 'SyntaxError': <class 'SyntaxError'>, 'UnicodeEncodeError': <class 'UnicodeEncodeError'>, 'SyntaxWarning': <class 'SyntaxWarning'>, 'delattr': <built-in function delattr>, 'OverflowError': <class 'OverflowError'>, 'RecursionError': <class 'RecursionError'>, 'BaseException': <class 'BaseException'>, 'FileExistsError': <class 'FileExistsError'>, 'help': Type help() for interactive help, or help(object) for help about object., 'dict': <class 'dict'>, 'FutureWarning': <class 'FutureWarning'>, 'IOError': <class 'OSError'>, 'NotADirectoryError': <class 'NotADirectoryError'>, 'complex': <class 'complex'>, 'ord': <built-in function ord>, 'print': <built-in function print>, 'property': <class 'property'>, 'callable': <built-in function callable>, 'memoryview': <class 'memoryview'>, 'set': <class 'set'>, 'FileNotFoundError': <class 'FileNotFoundError'>, 'ReferenceError': <class 'ReferenceError'>, 'BufferError': <class 'BufferError'>, 'ProcessLookupError': <class 'ProcessLookupError'>, 'chr': <built-in function chr>, 'range': <class 'range'>, 'pow': <built-in function pow>, 'IndentationError': <class 'IndentationError'>, 'ConnectionResetError': <class 'ConnectionResetError'>, 'TimeoutError': <class 'TimeoutError'>, 'InterruptedError': <class 'InterruptedError'>, 'int': <class 'int'>, 'ConnectionError': <class 'ConnectionError'>, 'input': <built-in function input>, 'FloatingPointError': <class 'FloatingPointError'>, 'NotImplementedError': <class 'NotImplementedError'>, 'bytes': <class 'bytes'>, 'staticmethod': <class 'staticmethod'>, 'isinstance': <built-in function isinstance>, 'False': False, 'AttributeError': <class 'AttributeError'>, 'ImportWarning': <class 'ImportWarning'>, 'SystemExit': <class 'SystemExit'>, '__import__': <built-in function __import__>, 'UnicodeTranslateError': <class 'UnicodeTranslateError'>, 'IsADirectoryError': <class 'IsADirectoryError'>, '__doc__': "Built-in functions, exceptions, and other objects.\n\nNoteworthy: None is the `nil' object; Ellipsis represents `...' in slices.", 'abs': <built-in function abs>, 'filter': <class 'filter'>, 'slice': <class 'slice'>, 'tuple': <class 'tuple'>, 'iter': <built-in function iter>, 'object': <class 'object'>, 'eval': <built-in function eval>, 'ConnectionRefusedError': <class 'ConnectionRefusedError'>, 'StopIteration': <class 'StopIteration'>, 'issubclass': <built-in function issubclass>, 'sum': <built-in function sum>, 'max': <built-in function max>, 'enumerate': <class 'enumerate'>, 'len': <built-in function len>, 'locals': <built-in function locals>, 'UserWarning': <class 'UserWarning'>, 'NameError': <class 'NameError'>, 'Exception': <class 'Exception'>, '__spec__': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>), 'bin': <built-in function bin>, 'ResourceWarning': <class 'ResourceWarning'>, 'any': <built-in function any>, 'LookupError': <class 'LookupError'>, 'DeprecationWarning': <class 'DeprecationWarning'>, 'list': <class 'list'>, 'ChildProcessError': <class 'ChildProcessError'>, 'next': <built-in function next>, 'Warning': <class 'Warning'>, 'ImportError': <class 'ImportError'>, '__build_class__': <built-in function __build_class__>, 'exit': Use exit() or Ctrl-D (i.e. EOF) to exit, 'str': <class 'str'>, 'classmethod': <class 'classmethod'>, 'globals': <built-in function globals>, 'BlockingIOError': <class 'BlockingIOError'>, 'quit': Use quit() or Ctrl-D (i.e. EOF) to exit, 'UnicodeError': <class 'UnicodeError'>, 'oct': <built-in function oct>, 'credits':     Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
    for supporting Python development.  See www.python.org for more information., 'setattr': <built-in function setattr>, 'ascii': <built-in function ascii>, 'StopAsyncIteration': <class 'StopAsyncIteration'>, 'exec': <built-in function exec>, 'UnicodeWarning': <class 'UnicodeWarning'>, 'ZeroDivisionError': <class 'ZeroDivisionError'>, 'EnvironmentError': <class 'OSError'>, 'round': <built-in function round>, 'super': <class 'super'>, 'RuntimeWarning': <class 'RuntimeWarning'>, 'TypeError': <class 'TypeError'>, 'TabError': <class 'TabError'>, 'reversed': <class 'reversed'>, 'SystemError': <class 'SystemError'>, 'float': <class 'float'>, 'hasattr': <built-in function hasattr>, 'PendingDeprecationWarning': <class 'PendingDeprecationWarning'>, 'IndexError': <class 'IndexError'>, 'None': None, 'repr': <built-in function repr>, 'True': True, 'ValueError': <class 'ValueError'>, 'sorted': <built-in function sorted>, 'format': <built-in function format>, 'frozenset': <class 'frozenset'>, 'KeyError': <class 'KeyError'>, 'GeneratorExit': <class 'GeneratorExit'>, 'UnicodeDecodeError': <class 'UnicodeDecodeError'>, 'map': <class 'map'>, 'bool': <class 'bool'>, 'OSError': <class 'OSError'>, 'hex': <built-in function hex>, 'PermissionError': <class 'PermissionError'>, 'bytearray': <class 'bytearray'>, 'RuntimeError': <class 'RuntimeError'>, 'open': <built-in function open>, 'vars': <built-in function vars>, 'hash': <built-in function hash>, 'compile': <built-in function compile>, 'getattr': <built-in function getattr>, 'type': <class 'type'>, 'KeyboardInterrupt': <class 'KeyboardInterrupt'>, 'AssertionError': <class 'AssertionError'>, 'BytesWarning': <class 'BytesWarning'>, 'zip': <class 'zip'>, 'divmod': <built-in function divmod>, 'MemoryError': <class 'MemoryError'>, 'ConnectionAbortedError': <class 'ConnectionAbortedError'>, '__debug__': True, 'dir': <built-in function dir>, '__name__': 'builtins', 'BrokenPipeError': <class 'BrokenPipeError'>, 'copyright': Copyright (c) 2001-2016 Python Software Foundation.
All Rights Reserved.

Copyright (c) 2000 BeOpen.com.
All Rights Reserved.

Copyright (c) 1995-2001 Corporation for National Research Initiatives.
All Rights Reserved.

Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
All Rights Reserved., 'ArithmeticError': <class 'ArithmeticError'>, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, 'Ellipsis': Ellipsis, '__package__': '', 'UnboundLocalError': <class 'UnboundLocalError'>, 'EOFError': <class 'EOFError'>, 'NotImplemented': NotImplemented}}
----------------------
gs = {'x': 3, 'y': 4}
======================

参考 https://www.cnblogs.com/sesshoumaru/p/5998523.html

Python学习笔记011——内置函数exec()的更多相关文章

  1. python学习笔记011——内置函数pow()

    1 语法 pow(x, y[, z]) x -- 数值表达式. y -- 数值表达式. z -- 数值表达式. 函数是计算 x 的 y 次方,如果 z 在存在,则再对结果进行取模,其结果等效于pow( ...

  2. python学习笔记011——内置函数dir()

    1 描述 dir()函数可以查看(打印)对象的属性和方法.不管时那种对象(python中一切皆对象)类型(数据,模块)都有自己的属性和方法. dir() 函数不带参数时,返回当前范围内的变量.方法和定 ...

  3. Python学习笔记011——内置函数eval()

    1 描述 eval()  函数用来执行一个字符串表达式,并返回表达式的值 2 语法 原文 eval(expression[, globals=None[, locals=None]]) express ...

  4. python学习笔记011——内置函数__module__、__name__

    1 __module__描述 __module__ : 如果当前模块为顶层模块执行 则打印__main__ 如果当前模块为被调用模块的时候 打印当前模块的名称 2 __module__示例 def f ...

  5. python学习笔记011——内置函数sorted()

    1 描述 sorted() 函数对所有可迭代的对象进行排序操作. sorted() 与sort()函数之间的区别 1 排序对象 sorted:所有可迭代对象的排序 sort:list列表的排序 2 返 ...

  6. python学习笔记011——内置函数filter()

    1 描述 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表. 2 语法 filter(function, iterable) function -- 函数,过 ...

  7. python学习笔记011——内置函数sum()

    1 描述 sum() 方法对系列进行求和计算. 2 语法 sum(iterable[, start]) iterable:可迭代对象,如列表. start:指定相加的参数,如果没有设置这个值,默认为0 ...

  8. python学习笔记011——内置函数__sizeof__()

    1 描述 __sizeof__() : 打印系统分配空间的大小 2 示例 def fun(): pass print(fun.__sizeof__()) 运行 112

  9. Python学习笔记-Day3-python内置函数

    python内置函数 1.abs    求绝对值 2.all 判断迭代器中的所有数据是否都为true 如果可迭代的数据的所有数据都为true或可迭代的数据为空,返回True.否则返回False 3.a ...

随机推荐

  1. Pytorch torch.optim优化器个性化使用

    一.简化前馈网络LeNet 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 im ...

  2. 同一页面的两个Iframe获取数据

    首先页面: <td style="width: 50%" valign="top"> <iframe name="xxx" ...

  3. Golang 中错误与异常需要重新认识

    如何进行错误处理,这是一个Go程序员之间,特别是一些新的Go程序员,会经常讨论的问题.讨论到最后往往由于以下代码的多次出现而变成了抱怨. if err != nil { return err } 我们 ...

  4. PHP 解决版本问题:"Assigning the return value of new by reference is deprecated"

    问题描述:     在最近使用ECSHOP v273帮客户建立了一个商城系统,商城搭建一切ok但在使用中后台发现了一个500错误     在服务器上访问该地址发现了错误信息:"Assigni ...

  5. Node.js中的HTTPS示例

      需要openssl的支持, openssl本身不提供windows的安装程序,可以按照如下的步骤进行安装: (参考https://conetrix.com/Blog/how-to-install- ...

  6. [Backbone]1. Module, View classed

    Welcome to the Anatomy of Backbone.js challenges! We're going to be building a simple Appointment ap ...

  7. 栈的应用实例——平衡符号

    检查().[].{}是否配对. /* stack_balance_symbol */ #include "stack.h" #include <stdio.h> #in ...

  8. An Easy Task(简箪题)

    B. An Easy Task Time Limit: 1000ms Case Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO f ...

  9. 解决RMI 客户端异常no security manager: RMI class loader disabled

    解决方法: 客户端和服务端的Service包名改一致 ok!!

  10. 通过修改css文件来观察openerp表单中的col和colspan

    适用版本 openerp 6.1.1 问题的提出 在openerp的表单定义中, 要使用 colspan和col 指你定各个元素的占位, 前者说明了本元素占据其所在容器的列数, 后者说明了本元素作为容 ...