Python 如何声明动态(数组数量)
Python how to declare dynamic ( number of arrays )
我想将整数作为输入并声明许多以 array_names 为起始形式的数组,从 0 到该整数
例如:
if I give input as 3 , then in my code there should be
arr1 = [] ,
arr2 = [] ,
arr3 = []
我试过了,但它给出了语法错误
arr = []
no_of_arrays = int(input())
for i in range(no_of_arrays):
arr{i} = []
它的给予
SyntaxError: invalid syntax
没有动态声明原始变量的好方法。
您可以创建字典 d={'Array1':[]....}
或尝试查看 exec
函数 - 出于多种原因不推荐这样做:
for i in range(int(input())):
exec('myArr{}=[]'.format(i))
虽然技术上您可以在 python 中使用 exec
执行此操作,但不推荐这样做。
相反,您应该创建一个列表列表:
arrays = [[] for _ in range(int(input())]
或列表字典:
arrays = {f'arr{i}': [] for i in range(int(input())}
您可以通过更新 globals or locals 字典来创建变量。
例如:
l = locals()
no_of_arrays = int(input())
for i in range(no_of_arrays):
l[f"arr{i}"] = []
print(arr0)
print(arr1)
我想将整数作为输入并声明许多以 array_names 为起始形式的数组,从 0 到该整数 例如:
if I give input as 3 , then in my code there should be
arr1 = [] ,
arr2 = [] ,
arr3 = []
我试过了,但它给出了语法错误
arr = []
no_of_arrays = int(input())
for i in range(no_of_arrays):
arr{i} = []
它的给予
SyntaxError: invalid syntax
没有动态声明原始变量的好方法。
您可以创建字典 d={'Array1':[]....}
或尝试查看 exec
函数 - 出于多种原因不推荐这样做:
for i in range(int(input())):
exec('myArr{}=[]'.format(i))
虽然技术上您可以在 python 中使用 exec
执行此操作,但不推荐这样做。
相反,您应该创建一个列表列表:
arrays = [[] for _ in range(int(input())]
或列表字典:
arrays = {f'arr{i}': [] for i in range(int(input())}
您可以通过更新 globals or locals 字典来创建变量。
例如:
l = locals()
no_of_arrays = int(input())
for i in range(no_of_arrays):
l[f"arr{i}"] = []
print(arr0)
print(arr1)