您的位置:首页 > 编程语言 > Python开发

python入门(4)

2015-11-24 00:56 627 查看
条件判读和循环

比如输入一个数字,根据这个数字可以打印不同的数值,可以用if来实现:

num1 = 25 # 声明一个整数为 25

if(num1 > 20):

print' you input num is,'num1

print("-----------")

print 'end'

注意python代码的缩进规则。具有相同的代码缩进为相同的代码块

缩进请严格按照python 的习惯写法:4个空格,不要使用tab ,更不要混合tab和空格,否则很容易造成因缩进而造成的语法错误。

当 if条件为True判断表达式往下执行

if num1 >20 :

print 'so big'

如果打印比20 小的该怎么表示哪???

if num1 <20:

print 'so smail'

或者用not运算符

if not num1 >=20:

print 'so smail'

这是有的人会发现,两种判断是“非此即彼”的,要么是条件一,要是是条件二,所以我们选择用 if .....else.....语句来完成判断

if num1 > 20:

print 'so big'

else:

print 'so smail'

用if.....else..... 根据条件表达式的值为True 或者False,分别执行if代码块或者是else代码块。

注意else: 后边有“冒号”

有的时候if.....else.....还不能满足我的需求。

条件1 --》如果大于20 输入print

条件2---》如果是等于20

条件3---》如果是小于20

这是我们就会考虑 if....elif.....else....

if num1 > 20:

print '大于20'

elif num1==20

print '相等'

else:

print '太小'

实际上 我们也可以在else 里边在来一次 if....else....判断

if num1>20:

print '大于20'

else:

if num1 ==20

print '==='

else:

print '小于'

这样也是可以的,建议还是使用 if...elif....else....

这里有个问题值得思考下:

num1 =20

if num1>=13

print '13'

elif num1>=18

print '>18'

else:

print '<13'

当输入19的时候为什没有输出 >18 ,每次都大于13都会执行第一个print 无论你数有多么的大,最好的解决办法,把最大判断表达式放在 首位进行判断。

--------for循环的使用----------

我们大概有所了解list 与tuple 都是表示一个有序的集合。如果想依次访问list 中的每个元素,该怎么办哪 ???

list = ['name','age','good']

print list[0]

print list[1]

print list[2]

此时你会发现这样取值很简单,那我告诉你 ,数在少的情况下这样写是没有问题的。如果是1000个值,这个方法就显得特别不好用了,

只是 --for循环最好的选择--

for name in list:

print name

给出每个人的分数,计算平均分数

score = [33,53,20,77,25]

sumscore = 0.0

count =0

for s in score:

sumscore =sumscore+s

count=count+1

print sumscore/count

while循环

和for循环不同的另一个循环时while循环,while循环不会迭代货tuple的元素,而是根据表达式判断是否结束。

n=14

x=0

while x < n:

print x

x=x+1

思考,如何利用while循环计算100以内基数的和。

x =1

sum =0

while x < 100:

sum =x*2-1+ sum

x=x+2

print sum

---break退出循环---continue 继续执行循环 ----for双重循环使用。。

sum =0

num =1

while num <20:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: