-1

次のコードを実行しようとすると、エラーが発生しますTypeError: object of type 'NoneType' has no len()(変数を参照stringConverted)。私はさまざまな値をテストしましたが、テストした値で機能します。iこれをデバッグする最良の方法は、「NoneType」の原因となる値を把握することだと思っていました。そこで、条件付きブレークポイントを設定しstringConverted = 'NoneType'て、実行時にこの条件が真のときにプログラムが停止するようにしました。しかし、条件付きブレークポイントを設定した後で実行しようとすると、同じエラーが発生するまで実行されます。私はここで何を間違っているのですか?条件付きブレークポイントステートメントのフォーマット方法は正しいですか?

def main():
    totalChars = 0
    for i in range(1,500):
        stringConverted = stringConvert(i)
        totalChars = totalChars + len(stringConverted)
    print totalChars
4

2 に答える 2

0
def main():
    totalChars = 0
    for i in range(1,500):
        stringConverted = stringConvert(i)
        if stringConverted is None:
            print i
            break
        totalChars = totalChars + len(stringConverted)
    else:
        print "No error!"
    print totalChars
于 2011-08-11T20:38:13.620 に答える
0

if stringConverted is Noneタイプをチェックしてであるかどうかを確認する代わりに、を使用する必要がありNoneTypeます。

于 2011-08-11T20:25:39.583 に答える