Python 的类对象的属性储存在的 __dict__ 中。__dict__ 是一个词典,键为属性名,值对应属性的值。
>>>
print
(
n0
,
n1
,
n2
,
n3
,
n4
)
0
1
2
3
4
>>>
class
Test_class
(
object
)
:
...
def
__init__
(
self
)
:
...
names
=
self
.
__dict__
...
for
i
in
range
(
5
)
:
...
names
[
'n'
+
str
(
i
)
]
=
i
>>>
t
=
Test_class
(
)
>>>
print
(
t.
n0
,
t.
n1
,
t.
n2
,
t.
n3
,
t.
n4
)
0
1
2
3
4
调用动态变量
事实上,对于重复性的变量,我们一般不会这样调用变量,如:var0, var1, var2, var3 ,var4....varN,可以利用下面方法动态调用变量。
先定义如下变量:
>>>
for
i
in
range
(
5
)
:
...
exec
(
'var{} = {}'
.
format
(
i
,
i
)
)
>>>
print
(
var0
,
var1
,
var2
,
var3
,
var4
)
0
1
2
3
4
利用 exec 函数
同样地,可以使用 exec 调用变量
>>>
for
i
in
range
(
5
)
:
...
exec
(
'print(var{}, end=" ")'
.
format
(
i
)
)
0
1
2
3
4
利用命名空间
因为命令空间的 locals() 与 globals() 均会返回一个字典,利用字典的 get 方法获取变量的值。
>>>
names
=
locals
(
)
>>>
for
i
in
range
(
5
)
:
...
print
(
names.
get
(
'var'
+
str
(
i
)
)
,
end
=
' '
)
0
1
2
3
4
原文地址:https://www.cnblogs.com/technologylife/p/9211324.html