python - String indices must be integers and while issue -


i writing code school homework. assignment this: write code read book codes till "000" entered , split books 2 categories depending on first 4 digits entered isbn , issn.

note: use str , check prefix of code (in case isbn , issn).

here code:

bookarray = [] booknumber = str(input("give me book code - type 000 if want cancel")) while booknumber != "000":    bookarray.append(booknumber)    booknumber = str(input("give me book code - type 000 if want cancel"))    if booknumber[0,4] == "isbn":        isbnarray = booknumber    elif booknumber[0,4] == "issn":        issnarray = booknumber print(issnarray) print(isbnarray) 

any regarding same appreciated! in first year in python @ school.

edit: expected output should 2 lists books' code numbers. currently, face autonomous loop on "while" not sure of how , why.

if booknumber[0,4] == "isbn": 

you're passing tuple index booknumber explains error message ("indices must integers"). want slice:

if booknumber[0:4] == "isbn": 

in case you'd better off

if booknumber.startswith("isbn"): 

also, if you're using python 2, entering 000 , passing str(input()) yields "0" since input() evaluates expression , 000 0. it's ok python 3, python 2, switch raw_input() (or ask user enter 0 quit, , test "0" instance. btw input unsafe in python 2).


Comments

Popular posts from this blog

javascript - Clear button on addentry page doesn't work -

c# - Selenium Authentication Popup preventing driver close or quit -

tensorflow when input_data MNIST_data , zlib.error: Error -3 while decompressing: invalid block type -