私はtests.pyで同じコードを書かれている[6,6,1、2、2、6、99、99、7]
=リストのエラーを発見しいくつかの例で実行します。
は、私はまた、sum(nums)
ニーズは私が間違っている場合は、私に教えてくださいsum(a)
def sum67(nums):
def c6(six):
if len(six) > 0:
if 6 not in six:
return six
else:
count = 0
for a in six:
if a == 6:
count = count + 1
for b in range(count):
in1 = six.index(6)
in2 = six.index(7)
six = six[0:in1] + six[in2 + 1:]
return six
else:
return 0
a = c6(nums)
return sum(a)
numbers = [6,6,1, 2, 2, 6, 99, 99, 7]
sum1 = sum67(numbers)
Traceback (most recent call last):
File "tests.py", line 26, in <module>
sum1 = sum67(numbers)
File "tests.py", line 21, in sum67
a = c6(nums)
File "tests.py", line 13, in c6
in1 = six.index(6)
ValueError: 6 is not in list
に変更することがわかりました。
私のコンソールで以下のコードを試しました。それは私のすべての入力のために働いています。
def sum67(nums):
def c6(six):
if len(six) > 0:
if 6 not in six:
return six
else:
count = 0
for a in six:
if a == 6:
count = count + 1
for b in range(count):
if six and six.__contains__(6) and six.__contains__(7):
in1 = six.index(6)
in2 = six.index(7)
six = six[0:in1] + six[in2 + 1:]
return six
else:
return 0
a = c6(nums)
return sum(a)
numbers = [6, 6, 1, 2, 2, 6, 99, 99, 7, 1, 2, 6, 1, 2, 7, 1, 2,6,7]
sum1 = sum67(numbers)
print("Sum value = %s" % sum1)
Sum value = 6
しかし、私はだから私は、このエラーの理由を知っていない主なdesription
Line 12: __contains__ is an invalid attribute name because it starts with "_".
に提供されたURL(http://codingbat.com/prob/p108886)でエラーの下に取得しています。
をフル*を含めるようにあなたの質問を編集してくださいPythonから*および* complete *出力。 –
6,7シーケンスがネストされている場合はどうなりますか? '[6,6,3,7,7]のように。最初の人は2番目の6人を削除します。 –
@someprogrammerdude:OPに*秘密のテスト入力があるとは思わない。 –