0
그래서 1000 자리 숫자에서 13 개의 인접 숫자를 찾는 프로그램을 만들려고합니다. 가장 큰 제품을 가지고 있습니다. 이것은 오일러 프로젝트에 대한 문제와 나는 오류 메시지에 실행 계속 :목록의 항목을 파싱하고 제품을 찾을 때 오류가 발생했습니다. 오류 : 'list'유형의 non-int로 시퀀스를 곱할 수 없습니다.
import operator
from functools import reduce
allDigits = 73167176531330624919225119674426574742355349194934969835203127745063262395783180169848018694788518438586156078911294949545950173795833195285320880551112540698747158
d = [int(d) for d in str(allDigits)]
digits = d[:13]
products = []
del d[:13]
while len(d) > 0:
tempProd = 1
for i in digits:
tempProd *= i
products.append(tempProd)
nextDigit = d[:1]
del digits[:1]
digits.append(nextDigit)
del d[:1]
products.sort()
print(products)
내가으로 실행하고 :이 게시물에 대한 1000 자리 숫자를 shortend하지만 여기
TypeError: can't multiply sequence by non-int of type 'list'
코드입니다 라인의 문제는 말한다 여기서
tempProd *= i
이 정말 목록을해야 값도 나를 혼란, 난 creati로 aswell NumPy와 제품 기능을 사용하여 시도 같은 문제로 실행 다음과 같습니다 내 자신의 기능을 NG :
어떤 도움을 많이하면 문제 메신저 여기에 해결하기 위해 노력에 대한 자세한 정보를 찾을 수 있습니다 apreciated 될def prod(x):
return reduce(operator.mul, int(x), 1)
: https://projecteuler.net/problem=8
을하는 것입니다? *해야한다*? 왜 당신은 아직 모르는거야? 이것은 가장 기본적인 디버깅 도구 중 하나 인 간단한 print 문입니다. 그들을 인쇄하고 가지고있는 것을 보아라. 런타임 시스템은 당신이 물을 수있는 최고 권위입니다! :-) – Prune