有没有可能把一个变量和一个数字连接起来,形成一个新的变量?

2024-09-30 01:34:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是python2.5。在下面的代码中,您希望根据x的值打印err1、err2或err3。是否可以通过将“err”加上x的值来创建变量err1、err2或err3?你知道吗

err1 = 'error foo1'
err2 = 'error foo2'
err3 = 'error foo3'

x = 1

print err + x

Tags: 代码errorerrprintfoo1foo2foo3err3
3条回答

如果你想要变量名的话,最好用字典重新编写。你知道吗

err = {
    '1': 'This is Err1',
    '2': 'This is Err2',
    '3': 'This is Err3',
}

print err[str(x)]

虽然你想做的是可能的,但不建议这样做。相反,使用字典:

err={}
err[1] = 'error foo1'
err[2] = 'error foo2'
err[3] = 'error foo3'

print err[x]

虽然动态地创建和引用变量是许多脚本语言的一个有趣的方面,但几乎总是可以用更直接的方式完成同样的事情。你知道吗

不建议这样做,但您希望:

x = 1
print getattr(__import__(__name__), 'err' + str(x))
# 'error foo1'

相关问题 更多 >

    热门问题