

勉強中に自分では解決できなかったので質問させていただきます。  
最小値と最大値を入力し、ランダムで選ばれた数字を当てるコードを書いていますが、最後のラインでエラーが出てしまいます。

`print` を使うとエラーが出ないで表示されるのですが、`int(input)` を使うとエラーになります。この違いは何なのでしょうか？  
教えていただけると幸いです。よろしくお願いいたします。

[code]

    import random 
    minNum = int(input("what is the minimum number for the range")) 
    maxNum = int(input("what is the max number for the range"))
    prob = random.randrange(minNum + 1, maxNum + 1) 
    guessNum = int(input("guess the number between", minNum, "and",maxNum))
    
[/code]


CC BY-SA 4.0
2023-04-19T03:46:20.567
94571
2023-04-20T06:21:03.360
2023-04-19T04:39:45.553
3060
54742
question
python
guessNum = int(input("guess the number between", minNum, "and",maxNum))でのエラー


まず疑問に思ったらドキュメントをしっかり読むことをおすすめします  
その上で 疑問が解決しない, あるいはキュメントが何処にあるか分からない などのとき質問するとよいのでは？  
(その場合は, その旨記したほうがよいでしょう)

[組み込み関数](https://docs.python.org/ja/3/library/functions.html) より

> `input()`  
>  `input(prompt)`
>
> 引数 _prompt_ が存在すれば、それが末尾の改行を除いて標準出力に書き出されます。次に、この関数は入力から 1 行を読み込み、文字列に変換して
> (末尾の改行を除いて) 返します。 EOF が読み込まれたとき、
> [`EOFError`](https://docs.python.org/ja/3/library/exceptions.html#EOFError)
> が送出されます。

> `print(*objects, sep=' ', end='\n', file=None, flush=False)`
>
> _objects_ を _sep_ で区切りながらテキストストリーム _file_ に表示し、最後に _end_ を表示します。 _sep_ 、
> _end_ 、 _file_ 、 _flush_ を与える場合、キーワード引数として与える必要があります。

`print()` では複数のオブジェクトを指定でき  
`input()` の場合 _prompt_ ひとつ(最大でも一つ)しか指定できない

[code]

    >>> print(12, 345, 12+345)
    12 345 357
    >>> print(12, 345, 12+345, sep=', ', end='# カンマ区切り\n')
    12, 345, 357# カンマ区切り
    >>> print(f'12 + 345 = {12+345}')
    12 + 345 = 357
    >>>
    >>> input('入力してください')
    入力してください10
    '10'
    >>> input('入力してください', '最大10')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: input expected at most 1 argument, got 2
    >>>
    
[/code]


CC BY-SA 4.0
2023-04-19T09:00:06.563
94573
2023-04-20T06:21:03.360
2023-04-20T06:21:03.360
3060
43025
94571
answer