首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

[D]关于基本错误处理的疑惑

2012-04-10 
[D]关于基本异常处理的疑惑?Python codesinput(enter an integer:)try:iint(s)print(valid integer e

[D]关于基本异常处理的疑惑?

Python code
s=input("enter an integer:")try:    i=int(s)    print("valid integer entered:",i)except ValueError as err:            print(err)
这个例子中 输入字符类 处理异常能理解,但输入非整数也异常就没想通,请点拨下,谢谢各位了~
---------
Double行动:
原帖分数:20
加分:20

[解决办法]
楼主哪个版本?我win7+py2.7输入浮点数没问题的,你的应该是py3.x版本了,试试raw_input(),像我下面一样
Python code
>>> ================================ RESTART ================================>>> enter an integer:10.2('valid integer entered:', 10)>>>
[解决办法]
嗯,py3k的input结果是字符串,如果允许浮点数字串取整的话,试试int(float(s))...
[解决办法]
这样的疑问最好的解决办法是看文档。

Convert a string or number to a plain integer. If the argument is a string, it must contain a possibly signed decimal number representable as a Python integer, possibly embedded in whitespace. The base parameter gives the base for the conversion (which is 10 by default) and may be any integer in the range [2, 36], or zero. If base is zero, the proper radix is determined based on the contents of string; the interpretation is the same as for integer literals. (See Numeric literals.) If base is specified and x is not a string, TypeError is raised. Otherwise, the argument may be a plain or long integer or a floating point number. Conversion of floating point numbers to integers truncates (towards zero). If the argument is outside the integer range a long object will be returned instead. If no arguments are given, returns 0.

The integer type is described in Numeric Types — int, float, long, complex.

热点排行