Python関数が何かを返すのを防ぐ方法はありますNone
か? 次のような出力が必要です。
[...] [...]
しかし、私はいつも得ます:
[...] なし [...]
ご要望があれば、ソースコードもアップロードできますが、少し長いです。
ご回答ありがとうございます。
Python関数が何かを返すのを防ぐ方法はありますNone
か? 次のような出力が必要です。
[...] [...]
しかし、私はいつも得ます:
[...] なし [...]
ご要望があれば、ソースコードもアップロードできますが、少し長いです。
ご回答ありがとうございます。
いいえ。を確認してif output is None:
、それに応じて出力を変更してください。
さて、あなたのコードを見て、「さようなら!合計スコア:9ポイント」という最終結果を生成するコードの最後の行を印刷していると思います。あなたがする必要があるのは、その行を印刷する代わりに、それを返し、以下に示すように関数呼び出しを印刷することです. また、関数は常に、文字列、int、または設定したデータの型を問わず、何かを返します。何も返さないことを選択すると、常に None が返されます。ゲームのセッション間に行のスペースが必要なように見えるので、\n が新しい行を開くためのものであると思っている場合。そうでない場合は、 \n を取り除くことができますが、結果には影響しません。とにかくこれが役立つことを願っています!
def no_name():
# return the line of code that generates this outcome instead of printing it
#to get rid of the None.
return "Goodbye! Total score: 9 points.\n"
print no_name()
Python では、式は常に結果を生成する必要があります。関数呼び出しは式であり、ここでも例外ではありません。結果として、関数を含むすべての callableは、その結果が であっても、結果を生成しNone
ます。ドキュメントから:
呼び出し
None
は、例外が発生しない限り、常に何らかの値 (おそらく ) を返します。
あなたはただテストすることができますNone
:
result = functioncall()
if result is not None:
# ...