Python--Demo6--流程控制语句

1、条件控制:

if..else语句

语法:if关键字、条件、冒号、下一行缩进代码块、else关键字、冒号、下一行缩进代码块

示例:

# if else 语句
age = 23
if age > 18:
    print('大家都是成年人,说话..')
    print('成年人')
else:
    print('不要带坏未成年人')

输出:

大家都是成年人,说话..
成年人

if..elif..else..语句

语法:if关键字、条件、冒号、下一行缩进代码块、elif关键字、条件、冒号、下一行缩进代码快

示例:

age = 23
# 多个elif=>else if的缩写 (python真的是能省就省)
if age > 18:
    print('成年人,请进...')
elif age > 12:
    print('中学生')elif age > 6:
    print('小学生')else:
    print('you are a baby')

输出:

成年人,请进...

注意:冒号出现标志着下一行需要进行缩进。

2、循环控制

while语句:

语法:while、条件、冒号、下一行开始缩进代码块

示例:

# 找出1~100 所有奇数的和
jishuhe = 0  # 循环变量赋初值
initvalue = 0
while initvalue < 100:  # 要有循环条件
    if initvalue % 2 != 0:
        print('奇数:%d' % initvalue)
        jishuhe += initvalue
    initvalue += 1  # 更改循环变量
print(jishuhe)

输出:

奇数:1
奇数:3
奇数:5
奇数:7
奇数:9
....

说明:只要条件成立代码块儿就不会停止;while循环需要在代码块中每次执行时更改循环变量,来推进while循环结束,否则就变成了一个死循环了。

fro...in语句:

语法:for关键字、变量名、in关键字、一个可迭代对象、冒号、下一行缩进代码块

示例1:

# 计算1加到10的和
sum = 0
for item in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:  # 别忘记加冒号
    sum = sum + item
print(sum)

输出:

55

示例2:

# for in 可以迭代list或者tuple
students = ['boge', 'minshener', 'yezi', 'yanchang']
for student in students:
    print(student)

输出:

boge
minshener
yezi
yanchang

示例3:

# python提供了 rang(n)函数 能够生成零到小于n的整数序列 在通过 list()函数将序列变成列表
oneTo100 = list(range(101))  # 这里不能写100 得写101
print(len(oneTo100))
count = 0
for item in oneTo100:
    count += item
print('1~100的和是%d' % count)

输出:

1~100的和是5050

多使用for in range() 很香

>>> for item in range(5):
...     print(item)
...
0
1
2
3
4

3、range()函数

语法:range()有三个参数,range()函数生成的序列不能直接使用。

使用场景:要么使用在for in中;要么得使用list(range()) 转换成列表才能使用

参数个数:

  • 只写一个参数range(n)--表示生成从0到n-1的序列
  • 只写两个参数range(n,m)--表示生成从n到m-1的序列
  • 写三个参数range(n,m,p)--表示生成从n到m-1的序列,序列增长的步长是p

示例:

>>> range(5)
range(0, 5)
>>> range(1,5)
range(1, 5)
>>> print(range(1,5))
range(1, 5)
>>> list(range(5))
[0, 1, 2, 3, 4]
>>> list(range(1,5))
[1, 2, 3, 4]
>>> list(range(1,5,2))
[1, 3]
>>> list(range(1,100,2))
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, ..., 89, 91, 93, 95, 97, 99]

说明:从上面的示例看出range()调用之后,并不返回值。我们得使用list()将其转换成列表才能使用。

其实range()调用之后返回的是一个迭代器,迭代器是啥?大致说一下,只要能被for in进行迭代的就是迭代器。更详细的以后再说。

原文地址:https://www.cnblogs.com/bigbosscyb/p/12318599.html