int를 목록에 추가 할 수 없습니다
-
21-12-2019 - |
문제
list == []
def MultiplesNumber(a):
for i in range(1, a+1):
if a % i == 0:
return i
list.append(MultiplesNumber(100))
TypeError: descriptor 'append' requires a 'list' object but received a 'int'
.
i
에 list
에 추가 할 수 없습니까?
해결책
코드가 잘못되었습니다.
-
list == []
는 비교 연산자이기 때문에 true 또는 false를 반환하는==
를 수행 중입니다.이 경우False
를 반환합니다.=
를 사용하여 변수를 초기화해야합니다. -
list
는 파이썬에서 내장형 유형의 이름이며, 변수 이름으로 다른 것을 사용하십시오.
둘 다 고정 :
alist = []
def MultiplesNumber(a):
for i in range(1, a+1):
if a % i == 0:
return i
alist.append(MultiplesNumber(100))
.
가 올바른 출력을 제공합니다.
다른 팁
list
는 list
변수의 그림자를 그림자 인 inbuilt 키워드입니다.가변을 검사하지 않는 변수에 목록을 할당해야합니다.
lst = []
def MultiplesNumber(a):
return [x for x in range(1, a + 1) if a % 2 == 0]
lst.append(MultiplesNumber(100))
print(lst)
. 제휴하지 않습니다 StackOverflow