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?
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.
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())
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.
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())
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With