【问题标题】:How to rename an array in python? [closed]如何在python中重命名数组? [关闭]
【发布时间】:2014-08-21 11:29:13
【问题描述】:

我有一个清单 dl[vr] 其中vr 是从文件中提取的任意名称。
我想要的是创建一个与vr 同名的数组, 所以我想知道除了
ar = np.array(dl[vr])
我应该怎么做才能将数组命名为变量vr

谢谢

【问题讨论】:

  • 同名?还是名称不同但值相同?
  • 我不确定你到底在问什么。您不应该从文件中提取变量的名称,而只能提取值。您能否提供一个您正在寻找的确切示例?
  • 但是为什么要改变呢?如果您不知道如何命名,将很难在其余脚本中使用它。
  • 列表是dl吗?如果vr 是从文件中提取的任意名称,为什么要使用它进行索引?
  • 我认为您从根本上对变量是什么感到困惑。你永远不会想要动态命名一个变量。

标签: python arrays rename


【解决方案1】:

您可以使用globals()locals()

globals()['aaa'] = 'hello world'

print aaa

'hello world'

但我认为最好使用字典。

【讨论】:

    【解决方案2】:

    我不完全确定您要的是什么,但听起来您想要一个用于识别数组的文件中的任意字符串(可能填充了来自同一文件的数据)。

    与其尝试为变量本身赋予任意名称,我认为您最好将数组存储在字典中并使用任意名称作​​为键:

    arrayDict = {}
    name = readStringFromFile()
    data = readArrayFromFile()
    arrayDict[name] = data
    

    显然,如果可以的话,您应该为这些变量选择更合适的名称:)

    可以创建一个名称未知的新变量,但您也必须间接访问它。您不妨使用自己的字典使这一点更明显。

    【讨论】:

    • 请问这个arrayDict[name]和原数组本身(data)在进一步操作数组时有什么区别?我应该选择哪一个?谢谢
    • 实际上并没有任何区别,但我假设您想将数据与特定标签相关联,以便稍后可以检索并通过该标签进行识别。如果您要加载多个文件并在之后处理它们,这将特别有用。如果您只有一个数组,并且将立即使用它,那么这样做没有任何好处 - 只需立即使用该数组并选择一个适用于所有情况的描述性名称。
    【解决方案3】:

    我认为您完全对基础知识感到困惑。

    listA = ['A','C','1']
    

    这里listAlist

    dictA = {}
    dictA["name"] = "xxxxxxx"
    

    这里dictAdict

    以下链接将帮助您了解什么是 list(array)/dict :

    【讨论】:

      猜你喜欢
      • 2012-10-24
      • 2011-10-03
      • 1970-01-01
      • 2021-08-29
      • 2012-10-25
      • 1970-01-01
      • 2021-12-14
      • 1970-01-01
      • 2020-04-02
      相关资源
      最近更新 更多