7.2Python入门(三)

if

为什么要有if判断?

就是为了判断事物的对错和真假,计算机也需要判断事物的对错,真假,从而做出不同的响应。

代码块:

python用缩进表示代码的归属,同样缩进的代码称为代码块。

布尔值可以直接用来判断,变量名也可以用来判断,因为变量名对应的值就是True或者False

布尔值为False的数据有:None,0,' ',[ ] ,{ }

第一种,if,else:

if 条件:

  代码1

  代码2

  ...

else:

  代码1

  代码2

  ...
if,else

用法:就是如果怎么怎么样,否则其他情况怎么怎么样。

第二种,if,elif,else:

if 条件:
    代码1
    代码2
    ...
elif 条件:
    代码1
    代码2
    ...
else:
    代码1
    代码2
    ...
if,elif,else

用法:就是如果怎么怎么样,又如果怎么怎么样,否则其他情况怎么怎么样,elif可以出现多次。

注意:else不能单独使用,必须和if,while,for配合使用,if,elif,else 同一级别配合使用的时候,只会运行一个代码块。

第三种,if可以嵌套:

if 条件:
    代码1
    代码2
    if 条件:
        代码1
        代码2
        ...
    elif 条件:
        代码1
        代码2
        ...
    else:
        代码1
        代码2
        ...
elif 条件:
    代码1
    代码2
    ...
else:
    代码1
    代码2
    ...
if嵌套

while

一般需要配合使用的关键字:

break:立即结束本层循环(只对它所属的那个while有效)

continue:跳出本次循环,直接开始下一次循环。

while + else:

只有当while依据条件正常结束才会运行else代码,如果是用break主动结束的,是不会运行else的。

n= 1
while n<5:
    if n < 5:
        print(n)
        n += 1
else:
        print('while循环正常结束')
while,else

while + break:

n = 1
while n < 5:
    if n == 3:
        break
    print(n)
    n += 1
else:
    print('while循环正常结束')
while,break

while + continue:

n = 1
while n < 5:
    if n == 3:
        n += 1
        continue
    print(n)
    n += 1
else:
    print('while循环正常结束')
while,continue

while循环的嵌套:

while True:
    代码1
    代码2
    ...
    if 条件:
        代码1
        ...
        while True:
            代码1
            ...
            if 条件:
                代码1
                ...
                break
                代码1
                ...
        break
while嵌套

for

定义:for循环不依赖于索引取值,for循环有一个固定的语法结构:

for 变量名 in 容器类型(可以是列表,字典等等):

  代码1

  代码2

  ..

字典在被for循环取值的时候,只会返回字典的key,value是不会主动返回的,需要用方式获取。

比如代码:

d = {'name':'jason','password':'123','hobby':[1,2,3,4]}
for i in d:
    print(d[i])

len():获取数据类型(容器类型)的个数,字符串是特例,获取的是字符串中字符的个数,无法获取数字的个数。

如何用for循环打印1~10(甚至1~1000000)?

for循环取值需要一个容器类型,此时没有,所以用到一个关键字:

range:表示范围的意思。

特点:顾头不顾尾,range(1,10)只会取出1~9。

range在python2与python3中的区别

1.python2中

  1.range其实就是一个列表

  2.xrange就相当于python3中的range

2.python3中

  range就相当于一个老母猪,是一个迭代器对象,你需要值的时候,它才会给我们值。

for + break:

效果同while中的break,立即结束本层循环。

for + continue:

效果同while中的continue,跳出本次循环,直接开始下一次循环。

for + else:

同while + else,只有当for依据条件正常结束才会运行else代码,如果是用break主动结束的,是不会运行else的。

name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
    if name == 'jason':
        break
    print(name)
else:
    print('for循环正常结束了')
for,break

for循环的嵌套

打印9*9乘法口诀表

for i in range(1,10):
    for j in range(1,i+1):  # 内层循环的range条件是根据外层循环决定的
        print('%s*%s=%s'%(i,j,i*j),end = ' ')  # end = ' '打印在同一行
    print()  # print自带换行
9*9乘法口诀表

 

posted @ 2019-07-02 21:34  Francis`  阅读(199)  评论(0编辑  收藏  举报