def define(self, name, value):
'''Define a Python entity.
Args:
name (str): Name of the entity.
value (Python object): Value of the entity.
Raises:
FyppFatalError: If name starts with the reserved prefix or if it is
a reserved name.
'''
varnames = self._get_variable_names(name)
if len(varnames) == 1:
value = (value,)
elif len(varnames) != len(value):
msg = 'value for tuple assignment has incompatible length'
raise FyppFatalError(msg)
for varname, varvalue in zip(varnames, value):
self._check_variable_name(varname)
if self._locals is None:
self._globals[varname] = varvalue
else:
if varname in self._globalrefs:
self._globals[varname] = varvalue
else:
self._locals[varname] = varvalue
self._scope[varname] = varvalue
评论列表
文章目录