python基础之流程控制

python流程控制

python的流程控制跟大多数的语言一样,包括if条件语句、for循环语句、while循环语句;跳出循环continue,break等

写在前面

python中的运算

1)算数运算

以下假设变量:a=10,b=20:

 

2)比较运算

3)赋值运算

4)位运算

以下假设变量:a=60,b=13,对应二进制为a=0011 1100;b=0000 1101

5)逻辑运算

Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:

6)成员运算,身份运算

除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。

身份运算符用于比较两个对象的存储单元

补充运算符的优先级

我们一般知道大概就行,在不确定优先级的情况下可以用()来规定优先级,括号里的优先级大于外面的!

if条件判断

单支
if 条件: 
  执行语句
多支
if 条件: # 条件成立 执行下方缩进里的执行语句
  执行语句
elif 条件:  # elif非必须的,当多个条件时可以使用多个elif,执行跟if一样
  执行语句
else# 上面条件都不成立,执行
  执行语句

示例:

基本条件判断if:

# 如果:年龄>30岁,那么:叫阿姨
age_of_girl = 31
if age_of_girl > 30:
    print('阿姨好')

 if……else……

# 如果:年龄>30岁,那么:叫阿姨
# 否则:叫小姐姐
age_of_girl = 31
if age_of_girl > 30:
    print('阿姨好')
else:
    print('小姐姐')

if……elif……else

# 如果:年龄>30岁,那么:叫阿姨
# 如果:18<年龄<=30, 叫小姐姐
# 否则:叫小屁孩
age_of_girl = 20
if age_of_girl > 30:
    print('阿姨好')
elif 18 < age_of_girl <= 30:
    print('小姐姐')
else:
    print('小屁孩')

条件组合

# 如果18<年龄<25并且身高>165并且体重<100并且漂亮就撩
# 否则:阿姨好
age = 22
height = 170
weight = 99
is_pretty = True
if age >= 18 and age <= 25 and height > 165 and weight < 100 and is_pretty:
    print('撩一下')
else:
    print('阿姨好')

if嵌套

# 在上面基础上
# 如果撩成功了   在一起
# 否则           开个玩笑
age = 22
height = 170
weight = 99
is_pretty = True
success = True
if age >= 18 and age <= 25 and height > 165 and weight < 100 and is_pretty:
    if success:
        print('在一起')
    else:
        print('开玩笑的')
else:
    print('阿姨好')

简单示例:

用户登录

 1 userinfo = {            # 用字典存储用户信息,以后会经常用到
 2     'name': 'zhow',
 3     'pwd': '123456'
 4 }
 5 name = input('请输入用户名:').strip()  # input让用户输入
 6 pwd = input('请输入密码:').strip()
 7 if name == userinfo['name'] and pwd == userinfo['pwd']:
 8     print('登录成功')
 9 else:
10     print('用户名或密码错误')
View Code

for循环语句

python中的for循环可循环一切可迭代的对象,包括字符串,列表,字典等,以及后面介绍迭代器和可迭代对象等。

基本格式

for i in range(10):  # range(10)生成一个列表从0开始
    print(i)

其他示例:

s = 'I love python'
for i in s:
    print(i)

l = [1, 2, 3, 4, 5, 6, 7]
for i in l:
    print(i)

d = {'name': 'zhow', 'age': 18}
for k, v in d.items():
    print(k, v)

while循环语句

基本格式

while 条件:   
    # 循环体
    # 如果条件为真,那么循环体继续执行,执行完毕后再次循环,重新判断条件。。。
    # 如果条件为假,那么循环体不执行,循环终止

基本使用

# 打印数字,奇数,偶数
# i = 0
# while i < 10:
#     print('loop',i)  
#     i += 1

# while i < 10:
#     if i % 2 == 0:  # 对2取余来判断是否为偶数
#         print('loop', i)
#     i += 1

# while i < 10:
#     if i % 2 == 1:
#         print('loop', i)  # 对2取余来判断是否为奇数
#     i += 1

死循环

while条件一直成立,并且循环体内没有跳出语句。

import time
i = 0
while True:
    print(i)
    i = i + 1
    time.sleep(1)  # 让程序睡眠一秒,就是暂停一秒

break使用

break跳出循环,结束循环

while True:
    name = input('请输入您的名字:')
    pwd = input('请输入您的密码:')
    if name == 'user' and pwd == '123':
        print('登录成功')
        break        #  跳出循环
    else:
        print('登录失败')

continue使用

continue结束本次循环进入下次循环

n = 1
while n <= 5:
    if n == 4:
        n += 1
        continue
    print(n)
    n += 1

while+tag====》》》True和False

tag = True
while tag:
    print('第一层')
    while tag:
        print('第二层')
        while tag:
            cmd = input('第三层>>:')
            if cmd == 'q':
                tag = False
                break

练习示例

1)打印金字塔

 1 # 方法一
 2 n = int(input('您要打印的层数:').strip())  # 默认输入是字符串需要转换成整数
 3 n = n * 2
 4 i = 1
 5 while i <= n:
 6     print((i*'x').center(n, ' '))
 7     i += 2
 8 
 9 # 方法二
10 n = int(input('您要打印的层数:').strip())  # 默认输入是字符串需要转换成整数
11 n = n * 2
12 for i in range(n):
13     if i % 2 == 1:
14         print((i*'x').center(n, ' '))
View Code

2)打印乘法口诀

i = 1
while i < 10:
    j = 1
    while j <= i:
        print(str(i) + 'x' + str(j) + '=' + str(i*j), end='\t')
        j += 1
    print()
    i += 1

for i in range(10):
    for j in range(1, i+1):
        print(str(i) + 'x' + str(j) + '=' + str(i * j), end='\t')
    print()

# end = '\t'代表打印了不换行   输出一个tab   默认是end = '\n'
View Code

乘法口诀装13写法

print('\n'.join([' '.join(['%s*%s=%-2s' % (j, i, i * j) for j in range(1, i + 1)]) for i in range(1, 10)]))

综合示例

猜数字

给定一个数字,你猜小了提示你小了,猜大了提示大了,刚好猜中提示中了并退出,总共可以猜3次,超出次数提示超过次数

 1 num=56
 2 for i in range(3):
 3     guess_num = int(input('输入你猜的数字:'))
 4     if guess_num == num:
 5         print('恭喜你猜对了')
 6         break
 7     elif guess_num > num:
 8         print('你猜的数字大了')
 9     else:
10         print('你猜的数字小了')
11 else:
12     print('你猜的次数过多,game over')
View Code
 1 num=56
 2 count = 3
 3 while True:
 4     if count == 0:
 5         print('你猜的次数过多,stupid')
 6         break
 7     guess_num = int(input('输入你猜的数字:'))
 8     if guess_num == num:
 9         print('恭喜你猜对了')
10         break
11     elif guess_num > num:
12         print('你猜的数字大了')
13     else:
14         print('你猜的数字小了')
15     count -= 1
View Code

猜你喜欢

转载自www.cnblogs.com/zhowhen/p/9746711.html