

python初心者です。参考書通りだと思うのですがname 'square' is not definedと出てしまいます

[code]

    """
    Module documentation
    words go here
    """
    spam=40
    def spuare(x):
        """
        function documentation
        can we have your liver then?
        """
        return (x**2)
    
    class employee:
        "class documentation"
        pass
    print (square(4))
    print (square.__doc__)
    
[/code]

[code]

    Traceback (most recent call last):
      File "docstrings.py", line 16, in <module>
        print (square(4))
    NameError: name 'square' is not defined
    
[/code]

(Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit
(AMD64)] on win32)


CC BY-SA 4.0
2019-05-03T02:03:21.217
54666
2019-05-03T03:40:22.250
2019-05-03T03:37:49.937
29826
question
python
NameError: name 'square' is not defined


[metropolis](https://ja.stackoverflow.com/users/16894/metropolis)さんがコメントされている通り、`def
spuare(x):`の箇所で`q`と`p`をtypoしているようです。

このため、 `spuare` という関数は定義されているものの、 `square` という関数が定義されていないため、 `NameError`
が発生しています。

> exception NameError  
>  ローカルまたはグローバルの名前が見つからなかった場合に送出されます。これは非修飾の (訳注: spam.egg ではなく単に egg のような)
> 名前のみに適用されます。関連値は見つからなかった名前を含むエラーメッセージです。  
>  [組み込み例外 — Python 3.7.3
> ドキュメント](https://docs.python.org/ja/3/library/exceptions.html#NameError)


CC BY-SA 4.0
2019-05-03T02:13:47.380
54667
2019-05-03T03:40:22.250
2019-05-03T03:40:22.250
29826
25936
54666
answer