Pythonは初めてです。次のコードの何が問題になっていますか?実行すると、「NameError:グローバル名 'reduce'が定義されていません」というエラーメッセージが表示されました。私はグールジに尋ねましたが、それは役に立たないです。 :(
def main():
def add(x,y): return x+y
reduce(add, range(1, 11))
if __name__=='__main__':
main()
私はそれを推測するつもりです:
reduce
関数は、一般的に使用されていないため、Python 3の組み込み関数から削除されました。これは、functools
モジュールで引き続き使用できます。 、そうすることができます:
import functools
def main():
def add(x,y): return x+y
functools.reduce(add, range(1, 11))
また
# Import reduce from functools
from functools import reduce
reduce
を組み込み関数のように使用できます。
def main():
def add(x,y): return x+y
reduce(add, range(1, 11))