从两个匹配列表中随机选择[Python]

埃德玛尔

我在从代码执行此方案时遇到问题。我必须在.ini文件中列出。

[FMI]
vendorCodes=["a", "b", "c", "d", "e"]
supplierName=["Test 1", "Test 2", "Test 3", "Test 4", "Test 5" ]

我使用json.loads从.ini文件中调用列表

vendorCodes = json.loads(config.get('Section1','vendorCodes'))
supplierName = json.loads(config.get('Section1','supplierName'))4

从列表中,random.choice将执行以选择数据。

vendorCodes, supplierName = random.choice(vendorCodes), random.choice(supplierName)

我还有一个将其写入.csv文件的功能。

fmiwriter.writerow([poNumber] + [vendorCodes] + [supplierName])

那么问题是输出不正确。它应该从列表中匹配,如果从vendorCodes随机选择是a那么supplierName应该是Test 1

这是下面的错误输出:

588636,a,Test 3
332790,c,Test 2
810055,d,Test 4
655819,a,Test 3
159163,e,Test 1

预期的输出应如下所示:

588636,a,Test 1
332790,c,Test 3
810055,d,Test 4
655819,a,Test 1
159163,e,Test 5
阿玛丹

不要使用choice而是选择一个整数索引,并使用该索引访问两个列表。

import random
index = random.randrange(len(vendorCodes))
chosenVendorCode = vendorCodes[index]
chosenSupplierName = supplierName[index]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章