Python实现变量值+字符拼接成新的变量名(动态变量名)

本文介绍了两种在Python中实现变量拼接的方法:一种是通过作用域(命名空间)来访问和打印不同变量;另一种是使用eval函数实现相同目的。文章通过实例展示了这两种方法的具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    不废话了,直接上实验脚本:

#!/usr/bin/python
# coding=utf:8
# Python两种方法实现 变量拼接,也就是说假如 a=1 , b1=100 ,要使得 print b{a} = 100
#
# 在shell中实现方法:
#   a=1
#   b1=100
#   result=`eval echo '$b'"$a"` 相当于 result=$b{$a},但是 $b{$a} 这样拼接变量显然是不正确的

# Python中第一种方法,利用namespace(作用域、命名空间)
scope = {}
exec "a1 = 5" in scope
exec "a2 = 10" in scope
exec "a3,a4 = 15,20" in scope

for num in xrange(1,5):
    value = scope['a' + str(num)]
    print "a%s : %s" % (num,value)

# Python中第二种方法,利用eval函数
b1 = 50
b2 = 100
b3 = 150

for num in xrange(1,4):
   value = eval('b' + str(num))
   print "b%s : %s" % (num,value)

运行结果如下图:

转载于:https://my.oschina.net/jamieliu/blog/785675