[Tutor] ASCII Conversion

Christian Witts cwitts at compuscan.co.za
Tue Jan 31 06:33:35 CET 2012


On 2012/01/31 06:50 AM, Michael Lewis wrote:
> I am trying to do a simple test but am not sure how to get around 
> ASCII conversion of characters. I want to pass in y have the function 
> test to see if y is an integer and print out a value if that integer 
> satisfies the if statement. However, if I pass in a string, it's 
> converted to ASCII and will still satisfy the if statement and print 
> out value. How do I ensure that a string is caught as a ValueError 
> instead of being converted?
>
> def TestY(y):
>     try:
>         y = int(y)
>     except ValueError:
>         pass
>     if y < -1 or y > 1:
>         value = 82
>         print value
>     else:
>         pass
>
> -- 
> Michael J. Lewis
> mjolewis at gmail.com <mailto:mjolewis at gmail.com>
> 415.815.7257
>
>
>
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
If you just want to test if `y` is an integer you can do so with 
`type(y) == int`, and to get the ASCII value of a character you can use 
`ord` like `ord('a') == 97`. And how to avoid your ValueError with a bad 
conversion, do your type checking before hand.

Hope that helps.
-- 

Christian Witts
Python Developer
//
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20120131/0be17207/attachment.html>


More information about the Tutor mailing list