编程语言没有条件判断可不行,让我们来看看Python是怎么做的。
本文仅供个人记录和复习,不用于其他用途
条件判断
Python也不例外,if之类的判断语句也是有的:
|
|
得到的输出如下:
num = 1
end
注意,if后面有一个冒号:
,一定要记得打上,不然就会报错。
当然,加上else也是可以的:
|
|
结果输出如下:
error
else后面也有冒号,也要记得打上。其实呢,Python不像其他高级编程语言,是不需要用大括号{
把代码块包起来。对于if来说,只需要if下面的代码存在缩进,那么就视作一个代码块。比如下面的这种就是错的:
|
|
Python会提示你else存在错误,因为第二个print
没有缩进,那么if执行完第一条语句后就结束了,else没有办法和if对应起来。换成C语言代码可能好理解一点:
|
|
这样一来逻辑就很清楚了吧?让我们接着了往下看:
|
|
elif
就相当于else if
,只不过Python中是这么写而已。
其他的地方和C语言是类似的,比如:
|
|
如果x
是非零数值、非空字符串、非空list等,就判断为True
,否则为False
循环
Python有两种循环,第一种是for in
的结构,用于遍历list和tuple:
|
|
打印出来就是这样:
hyx
miao
如果把它转换成C++,那么就是这样:
|
|
注意,for in
也只执行后面的缩进块,所以编写Python时一定要注意缩进。可能有人还是不太懂,那么看看下面:
|
|
这个我们之前已经讲过了,print ‘yes’
只会执行一次。那么再看看这个:
|
|
这个会直接报错。所以,Python中的缩进是非常重要的。由于没有使用大括号来表示代码块,那么缩进就成为了识别代码块的重要标志。可能其他的编程语言中缩进只是为了美观,那么在Python中就有着一定的实际意义。
再比如我们想计算1-10的整数之和,可以用一个sum变量做累加:
|
|
如果要生成1-100的整数和,那么不太可能一个个打上去,我们可以使用range()
函数,比如range(5)
代表从0到小于5的整数列:
>>> range(5)
[0, 1, 2, 3, 4]
所以上面的问题可以这么解决:
|
|
第二种循环就是我们熟悉的while
循环,只要满足条件,那么就执行代码块,否则就退出:
|
|
上面的代码计算了100以内的奇数和,结果是2500
。
再谈raw_input()
一般来说,我们会用raw_input接收用户输入,然后做一些判断:
|
|
然而如果你运行上面这串代码,结果会是‘00’
。这个是因为raw_input返回的是字符串,那么判断结果显然是False
。所以为了得到整数,我们应该使用int()
进行转换:
|
|
这样一来,如果用户输入的不是数字,Python会自动报错并退出。如果是数字,那么就会被转为整数,从而得到我们想要的结果。