notes =[]
def newNote(notes):
note = input("Whats up")
notes.append(note)
return notes
input = input("in or out? ")
if (input == "in"):
newNote(notes)
note = input("Whats up")
is the line that has the problem and I see nothing wrong with it. I have tried the line just by instelf (not in a function) and it works but for some reason it doesnt work inside the function.
Can anyone explain this to me?
The problem with line input = input("in or out? ")
.
You redefine input
function to result of input("in or out? ")
, so now the input
is a string.
The solution is to simply change input("in or out? ")
result variable to something another:
notes =[]
def newNote(notes):
note = input("Whats up")
notes.append(note)
return notes
choice = input("in or out? ")
if (choice == "in"):
newNote(notes)
input = input("in or out? ")
is overriding the built-in input function. Replace the variable name with a different name and it will work.
Try this:
notes =[]
def newNote(notes):
note = input("Whats up")
notes.append(note)
return notes
inp = input("in or out? ")
if (inp == "in"):
newNote(notes)
You have used the keyword 'input' to name a variable. You should never use a keyword to define functions or variables unless you want to override the built in functionality of the language.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.