将variable.def读为字符串

时间:2015-02-22 17:08:52

标签: python

我正在尝试将variable.def作为字符串读取。

et.def?
Type:        str
String form: total energy
Length:      12
Docstring:
str(object='') -> string

当我尝试访问它时:

et.def
  File "<ipython-input-60-028014709411>", line 1
    et.def
     ^
SyntaxError: invalid syntax

失败,因为Python将.def视为函数定义。有没有办法获得字符串部分?

1 个答案:

答案 0 :(得分:1)

Python语法包含几个保留字,它们看起来像标识符但不能这样使用 - 包括def(以及class,{ {1}}和其他几个人。)

要访问使用此类标识符作为标识符的数据(无疑是从外部源构建的?)(例如,在您的情况下,显然是作为任何对象的if表示的属性名称) ,内置函数etgetattr和&amp; c,它们接受属性名称作为字符串(而不是像普通内联语法那样作为标识符),派上用场(就像属性名称在变量中时一样)。

所以,在这种情况下,

setattr

应该可以帮助您访问该属性的值。