1

エラーがあります

AttributeError: 'NoneType' object has no attribute

そのため、次の行が実行されないように if を追加しました。

if library.info != NoneType:
    library.info.update(info)

NoneTypeしかし、それは機能しません。どういうわけか有効ではないというエラーが表示されます

そのようなifをどのように書くのですか?

4

4 に答える 4

2

その値と直接比較します。

if library.info is not None:
    library.info.update(info)
于 2013-11-12T16:46:54.750 に答える
1

あなたはただ言うことができます:

if library.info:
    library.info.update(info)

きれいに見える

于 2013-11-12T16:47:40.650 に答える
1

Python には という名前のビルトインはありませんNoneType(ただし、Python 2.xにはがありますtypes.NoneType)。

代わりに、Python はNonenonetype を使用して表現します。したがって、コードは次のようになります。

# You should always use `is` and `is not` to test for `None`.
if library.info is not None:
    library.info.update(info)
于 2013-11-12T16:46:48.033 に答える
1

library.info期待される頻度に応じてNone、例外を好む場合があります。

try:
    library.info.update(info)
except AttributeError:
    library.initialize_the_info_hoozit()
    library.info.update(info)
于 2013-11-12T16:53:46.720 に答える