如何在代码中将整数数组与字符串数组相关?

问题描述 投票:0回答:3

我是一名Python初学者,他开始熟悉pymc库。在我的程序中,我正在生成1到100之间的随机数。当我在生成随机变量时,它显然返回一个带有整数的数组(在本例中为10 int数组):

customer_names = customer_names.random(size=10)

这篇文章的历史是我想通过一个表将每个int变量与一个特定名称相关联,就好像每个名称都有一个标识符,但我不知道如何在代码中实现它。

我想要的是,当我print(customer_names)而不是获得数组[ 54 2 45 75 22 19 16 34 67 88]时,我想要获得[ Jose Maria Carmen Alejandro Davinia Eduardo Carlos Fátima Marc Mireia]

我尝试了以下操作:

def identificar_nombres(nc = customer_names):
    for i in range (0, 9): #in this case 9 because I'm generating 10 random numbers
        if nc[i] == '1':
            return 'ANTONIO' 
        elif nc[i] == '2':
            return 'MARIA CARMEN'
        else: return nc[i] # process repeatedly with all names in the name dataset

nombres = identificar_nombres(customer_names) 

但没有结果。

谢谢!

python python-3.x pymc
3个回答
0
投票

使用字典(键/值对)来存储变量,如下所示:

variables = {1: 'ANTONIO', 2: 'MARIA CARMEN'}

并像这样访问它:

customer_names = list(variables.values()))
print(customer_names)

输出:

['ANTONIO', 'MARIA CARMEN']

0
投票

通过“没有结果”,我假设您正在获得else语句。

这是因为使用if nc[i] == '1',您正在将class'int'class'str'比较,这将永远不会匹配。尝试以下代码:

if nc[i] == 1:
            return 'ANTONIO' 

或者,在这里使用字典(键值)将是更好的方法。


0
投票
def identificar_nombres(customer_names):
  customerlist = []
  for i in customer_names:
      if customer_names[i] == 1:
          customerlist.append("ANTONIO") 
      elif customer_names[i] == 2:
          customerlist.append("MARIA")
  return customerlist

nombres = identificar_nombres(customer_names) 
print(nombres)
© www.soinside.com 2019 - 2024. All rights reserved.