python调用for循环中的变量



最近我学习了PHP,在PHP中我可以这样做

$var_1 = "";
$var_2 = "something";
$var_3 = "";
for($i = 1; $i <= 3; $i++){
if(${"var_". $i} = ""){
// do something
}else{
// do something
}
}

我想知道我能不能在python上实现这个?谢谢你。

是的,但这是一个可怕的做法。使用列表并直接迭代而不是索引。如果需要,您可以通过var[index]访问单个变量。

items = ['', 'something', '']
for item in items:
if item == '':
print('do something1')
else:
print('do something2')

输出:

do something1
do something2
do something1

您可以使用python中的globals()函数以字符串引用的形式通过名称访问变量。

下面是你想要做的一个例子:

var_1 = ""
var_2 = "something"
var_3 = ""
for i in range(1, 4):
if globals()[f"var_{i}"] == "":
# do something
else:
# do something

最新更新