Python基础五

来源:互联网 发布:闪恋 知乎 编辑:程序博客网 时间:2024/06/05 09:32

条件判断(比较简单略过)
循环语句

sum = 0
for x in range(101):
sum = sum + x
print sum

1234

range(5)
[0, 1, 2, 3, 4]

123

结果如下:输出结果

再议raw_input最后看一个有问题的条件判断。很多同学会用raw_input()读取用户的输入,这样可以自己输入,程序运行得更有意思:

birth = raw_input(‘birth: ‘)
if birth < 2000:
print ‘00前’
else:
print ‘00后’

输入1982,结果却显示00后,这么简单的判断Python也能搞错?当然不是Python的问题,在Python的交互式命令行下打印birth看看:

birth
‘1982’
‘1982’ < 2000
False
1982 < 2000
True
原因找到了!原来从raw_input()读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结果,必须先用int()把字符串转换为我们想要的整型:

birth = int(raw_input(‘birth: ‘))
再次运行,就可以得到正确地结果。但是,如果输入abc呢?又会得到一个错误信息:

Traceback (most recent call last):

ValueError: invalid literal for int() with base 10: ‘abc’
原来int()发现一个字符串并不是合法的数字时就会报错,程序就退出了。

0 0
原创粉丝点击