python:在循环中按顺序清除名称

python:在循环中按顺序清除名称,python,string,Python,String,我想按顺序声明变量名: 比如x_1,x_2,x_3,…,x_5,并在python中用它们赋值。 比如x_i=i^2 n = 10 for i in range(1, n): x_i = i**2 print(x_2) 有人能帮忙吗?您可以使用此功能,但不推荐使用: n = 10 for i in range(1, n): globals()[f'x_{i}'] = i**2 print(x_2) #4 您可以使用globals(),但我不推荐。用听写法回答你的问题吗?以编

我想按顺序声明变量名: 比如x_1,x_2,x_3,…,x_5,并在python中用它们赋值。 比如x_i=i^2

n = 10
for i in range(1, n):
    x_i = i**2

print(x_2)

有人能帮忙吗?

您可以使用此功能,但不推荐使用:

n = 10
for i in range(1, n):
    globals()[f'x_{i}'] = i**2

print(x_2) #4

您可以使用
globals()
,但我不推荐。用听写法回答你的问题吗?以编号的方式命名变量序列不是最佳做法。改为使用列表。使用列表:
x=[]
表示范围(n)中的i:
x.append(i**2)
打印(x[2])
。还要了解列表的理解,
x=[i**2表示范围(n)内的i]