24

コードの問題が何かわかりません。非常に単純なので、これは簡単です。

x = input("Give starting number: ")
y = input("Give ending number: ")

for i in range(x,y):
 print(i)

それは私にエラーを与える

Traceback (most recent call last):
  File "C:/Python33/harj4.py", line 6, in <module>
    for i in range(x,y):
TypeError: 'str' object cannot be interpreted as an integer

例として、xが3でyが14の場合、印刷したい

Give starting number: 4
Give ending number: 13
4
5
6
7
8
9
10
11
12
13

何が問題ですか?

4

8 に答える 8

24

最も簡単な修正は次のとおりです。

x = input("Give starting number: ")
y = input("Give ending number: ")

x = int(x)  # parse string into an integer
y = int(y)  # parse string into an integer

for i in range(x,y):
    print(i)

input文字列を返します ( raw_inputPython 2 では)。intそれを整数に解析しようとします。このコードは、文字列に有効な整数文字列が含まれていない場合に例外をスローするため、おそらくtry/exceptステートメントを使用して少し改良する必要があります。

于 2013-10-07T20:57:56.943 に答える
3
x = int(input("Give starting number: "))
y = int(input("Give ending number: "))

PS 追加機能int()

于 2017-12-07T10:33:41.017 に答える
1

あなたは置く必要があります:

X = input("give starting number") 
X = int(X)
Y = input("give ending number") 
Y = int(Y)
于 2013-10-07T21:02:03.303 に答える
1

input(prompt)文字列を返すpython3を実行していると思います。これを試して。

x=int(input('prompt'))
y=int(input('prompt'))
于 2013-10-07T20:58:53.637 に答える