Python 将一个列表的元素乘以另一个列表的元素时出错

Python 将一个列表的元素乘以另一个列表的元素时出错,python,Python,给定两个整数列表,编写一个函数multLists(list1,list2),将list1的每个值乘以list2的值,并返回list1及其更新后的值 def multLists(list1, list2): for i in range(len(list1)): list1 = list1[i] * list2[i] return list1 length = int(input()) first_list = [] second_list = [] for i

给定两个整数列表,编写一个函数multLists(list1,list2),将list1的每个值乘以list2的值,并返回list1及其更新后的值

def multLists(list1, list2):
    for i in range(len(list1)):
        list1 = list1[i] * list2[i]
    return list1

length = int(input())
first_list = []
second_list = []
for i in range(length):
    num1 = int(input())
    num2 = int(input())
    first_list.append(num1)
    second_list.append(num2)
list1 = multLists(first_list, second_list)
for i in list1:
    print(i)
提交时,会发生以下情况:

2
1
2
3
4
Your output
Traceback (most recent call last):


     File "main.py", line 17, in <module>
    list1 = multLists(first_list, second_list)
  File "main.py", line 3, in multLists
    list1 = list1[i] * list2[i]
TypeError: 'int' object is not subscriptable

Your output does not contain
[8, 24]
2
1.
2.
3.
4.
你的产出
回溯(最近一次呼叫最后一次):
文件“main.py”,第17行,在
列表1=多列表(第一个列表,第二个列表)
文件“main.py”,第3行,多列表
list1=list1[i]*list2[i]
TypeError:“int”对象不可下标
您的输出不包含
[8, 24]

list1=list1[i]*list2[i]
行中,您将
list1
(这是一个列表)设置为
list1[i]*list2[i]
的结果,这是一个数字。也许你的意思是
list1[i]=list1[i]*list2[i]