Why does my code print "built-in method" and some hex numbers?
Solution 1
Key
contains this problematic line:
key = input("Now, input the key which will be used to encode the message.\n".lower)
which passes as input to input
the lower
method of a string, when you (presumably) want to pass the string and then apply lower
to what input
returns.
Solution 2
After .upper
or .lower
there has to be a closed pair of parentheses. You can put custom arguments in them but if you just want to capitalize the input leave them empty.
Example:
user=(input("Enter a letter:")).upper()
This will change case to upper.
Solution 3
You need to use closed pair of parenthesis after lower
key = input("Input the key which will be used to encode the message.\n".lower())
Solution 4
key = input("Input the key which will be used to encode the message.\n".lower)
Because lower function is missing parenthesis, put parenthesis after function call. so syntax would be like
key = input("Input the key which will be used to encode the message.\n".lower())
Admin
Updated on March 13, 2021Comments
-
Admin about 3 years
Here is my Key function:
def Key(message, decision): key = input("Input the key which will be used to encode the message.\n".lower) n = 0 for i in range(len(key)): if 64 < ord(key[n]) < 91: raise ValueError(key[n], "is a capital letter!") else: n = n+1 Keycode(decision, message, key)
When I call it and input the message and press enter it comes up with:
built-in method lower of str object at 0x0150E0D0
What's wrong? How can I fix it?
-
Sabrina Leggett almost 4 yearsthis is what I get for using ruby for too long. I just spent 30 minutes trying to debug this.