在python中创建字符串数组时出错?

2024-04-26 00:38:19 发布

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

全部:

我想创建一个字符串数组,然后将其传递给python中的类,如下所示:

from plottert import plotter
at[0]='./Re100/17/0.001/R/Vx-H'
at[1]='./Re100/33/0.001/R/Vx-H'
at[2]='./Re100/65/0.001/R/Vx-H'
b[0]='./U-0.001-H'
plotter (at,b)

但是我在显示name 'at' is not defined时出错。 我知道at.append()会有用的。但是,我真正想要的是将值添加到所需数组的特定索引中。有什么帮助吗?你知道吗


Tags: 字符串namefromimportisnot数组at
3条回答

如果需要,可以简单地用空字符串填充它

at = [''] * n #n = length of list
at[0]='./Re100/17/0.001/R/Vx-H'
at[1]=...

然而,正如其他人所提到的,你从来没有在第一时间初始化过你的列表。你知道吗

如果要分配给索引而不必知道数据结构的最终大小,请改用字典:

at = {}
at[0] = 'zero'
at[4] = 'four'  # look, it's sparse

如您所见,这还有一个优点(相对于append),您可以按任何顺序分配。你知道吗

如果以后要将其转换为数组,可以执行以下操作:

at_arr = [at[i] if i in at else None
          for i in range(max(at.keys())+1)]
# at_arr now holds the array ['zero', None, None, None, 'four']

首先,创建列表(没有非基本类型arrays):

at = [''] * n # n = size of at
b = [''] * m # m = size of b

然后执行你的代码。你知道吗

不能使用尚未定义的列表。你知道吗

相关问题 更多 >