+ 1
Zip code validator python question
Looking for some explanation to help me understand why my code doesn't work for the "zip code validator" code coach. I pass solutions 2 through 5, but not 1 and 6. I'm stumped as to why. entry = input() if (type(entry) is int) and (len(entry) == 5) and (entry.count(" ") == 0): print("true") else: print("false")
5 Antworten
+ 3
your statement " type( entry) is int " always returns false as input is taken as string type...
+ 3
Ah of course inputs are str type. Thank you all for your help
+ 2
Jayakrishna 🇮🇳 Yes, indeed it is.
the-napster Try using try/except block with entry = int(input()), or try using list comprehension like this:(Just a little example)
n = [x for x if x.isalpha() or not x.isalnum()]
print("false" if len(n) >= 1 or len(entry)!=5 else "true")
In the following code, we use list comprehension to collect all characters that are not numbers. `isalpha()` returns True if the character is in alphabet, `isalnum()` returns True if the character is alphabet numerical(a-zA-Z0-9).
Here, we used the "not" operator for `isalnum()` to gather all symbols of the string..
Next, we used the len () function to get the length of n and check if the length of it is greater/equal to 1 or not..
Lastly, we used ... if condition else ... to reduce code line.
+ 2
the-napster now that you have Jayakrishna 🇮🇳's answer, you will need to find a better way to test for numeric input. Python provides a useful string object method, isnumeric(), that returns True if all characters are numeric, else False if any are non-numeric.
Try:
if entry.isnumeric() and len(entry)==5:
+ 1
Try solving this problem with try/except block!