Python 如何在for循环中访问类中的数组元素

Python 如何在for循环中访问类中的数组元素,python,class,Python,Class,这个代码有什么问题?我不熟悉python和面向对象编码,我不知道如何访问这些值 代码: 预期: a 1 b 2 C4 x100 等等。问题似乎是您试图将字符串(食物)列表中的元素与数字(数量)列表中的元素“连接起来”。假设两个数组的长度相同,并且您使用的是Python 3.6+,请使用以下命令: class Stock(): def __init__(self, foodArray, quantityArray): self._foodArray = foodAr

这个代码有什么问题?我不熟悉python和面向对象编码,我不知道如何访问这些值

代码:

预期: a 1 b 2 C4 x100
等等。

问题似乎是您试图将字符串(食物)列表中的元素与数字(数量)列表中的元素“连接起来”。假设两个数组的长度相同,并且您使用的是Python 3.6+,请使用以下命令:

class Stock():    
    def __init__(self, foodArray, quantityArray):
        self._foodArray = foodArray
        self._quantity = quantityArray

    def printStock(self):
        for i in range(len(self._foodArray)):
            print(f'{self._foodArray[i]} {self._quantity[i]}')
def printStock(self):
    for food, quantity in zip(self._foodArray, self._quantity):
        print(f'{food} {quantity}')
如果您使用的是Python 3.6之前的版本,请将print语句更改为:

print('{} {}'.format(self._foodArray[i], self._quantity[i]))
您甚至可以使用以下方法简化该方法:

class Stock():    
    def __init__(self, foodArray, quantityArray):
        self._foodArray = foodArray
        self._quantity = quantityArray

    def printStock(self):
        for i in range(len(self._foodArray)):
            print(f'{self._foodArray[i]} {self._quantity[i]}')
def printStock(self):
    for food, quantity in zip(self._foodArray, self._quantity):
        print(f'{food} {quantity}')
工作示例:
输入是什么?你期望什么样的产出?这两个列表是否总是相同的长度?你有什么错误吗?@SimonFlodin,
foodArray
是字符串列表,而
quantityArray
是数字列表吗?是的,foodArray是字符串数组,数量是数字!你的解决方案很好:D