转载

Python 学习之路(二) - 条件语句及循环


一、if 条件语句

        (一)、基础语法:

# if 逻辑判断
if 1:  # 条件成立则往下运行,逻辑判断中1即是True
    print('Hello ')  # 基础语法,注意缩进,Python是看缩进,如此行在if判断语句,会随着if运行
print('Wold')  # 这里就在if之外,不管有没有运行if语句,都会运行

"""
输出:
Hello 
World
"""
# 当if条件不成立,即(False)时,则if缩进后面代码不运行
if 0:
    print('Hello ')
print('World')

# 输出:World
# 注意执行顺序(从上到下,右到左)
if 1:
    print('第一个执行语句')
    print('第二个执行语句')

"""
输出:
第一个执行语句
第二个执行语句
"""
    
# 例子:
age = input('您今年几岁:')
if int(age) >= 18:
    print('可以进入网吧!')
print('结束')

"""
分两种情况输出:

如果输入的年龄>=18那么就输出:
您今年几岁:18
可以进入网吧!
结束

小于18岁则输出:
您今年几岁:12
结束
"""

        (二)、if ... else ...

# 基本格式
age = input('您今年几岁:')
if int(age) >= 18:
    print('欢迎光临!')
else:
    print('未成年人禁止进入网吧!')
print('程序结束')  # 在缩进外的不管if如何都会执行

"""
输出
如果输入的年龄大于18岁:
您今年几岁:18
欢迎光临!
程序结束

否则:
您今年几岁:12
未成年人禁止进入网吧!
程序结束
"""

        (三)、if 多条件判断

# 基本格式
a = int(input('输入'))
if a < 18:
    print('提示1')
elif a < 20:
    print('条件2')
# 中间可以加任意数量elif
else:  # 可加可不加,如果if和elif语句都没运行,那么就运行这个下面的语句
    print('都没有')
print('不缩进不影响if运行,都会运行!')
# 练习:BMI计算器
height, weight = input('输入您的身高(CM 取整):'), input('输入您的体重(KG 取整):')
try:  # 防止乱输入
    BMI = int(weight) / ((int(height) / 100) ** 2)  # 体重指数 BMI=体重/身高的平方(国际单位kg/㎡)
    if BMI < 18.5:
        print('您的BMI值偏低,请注意其它疾病危险性增加,多注意饮食!')
    elif 18.5 <= BMI < 23.9:
        print('您的BMI值属于正常水平,注意保持哦!')
    elif BMI <= 24:
        print('超重,注意饮食!')
    elif 24 < BMI <= 26.9:
        print('偏胖,相关疾病发病的危险性将增加!注意锻炼哦!')
    else:  # 其实还有(27-29.9、30),懒得写了....
        print('您已经极重度肥胖了,相关疾病发病的危险性将会严重增加!')
except ValueError:  # 捕捉异常
    print('数据有误,程序到此结束!')



# map语法输入height和weight,只是height变为了date[0],weight变为了date[-1]
date = list(map(int, [input('输入您的身高:'), input('输入您的体重:')]))
print(date)

        (四)、if 嵌套

# 很好理解,一层套一层
# if 条件1:
#     条件1成立执行的代码
#     条件1成立执行的代码

# if 条件2:
#     条件2成立执行的代码
#     条件2成立执行的代码

# 例子 pass那里写执行代码
if 1:
    if 2:
        pass
        if 3:
            pass
    if 4:
        pass

二、whlie循环

        循环的作用:让代码更高效的重复执行。

# 基础格式
while 1:  # 死循环,while运行后,如果while后面的条件结果是True就继续运行,直到程序条件为False停止
    print('你好!')
while 0:  # 这个循环不会运行,因为while后面值为0,即False
    print('你好!')

# 正常格式
i = 1  # 先给定一个值
while i < 100:
    print('这里写执行语句')
    i += 1  # 写这个防止死循环,没运行一次,i值+1,直到>= 100 后程序停止运行

三、for 循环

for i in range(5): 
    # 这个range是一个迭代器,运行后会自动生成一个数组(list)即[0, 1, 2, 3, 4],通过成员运算符in
    # 然后for循环会遍历整个list进行运行,即将0-4赋值给i,第一次i = 0, 第二次i = 1 ... 第五次i = 4
    # 直到数组最后一个结束为止,即循环5遍,注:range是一个左开右闭的区间
    print(i)

"""
输出:
0
1
2
3
4
"""

print(list(range(5)))  # 生成了一个列表,for循环即生成这样的表
# 输出:[0, 1, 2, 3, 4]

                值得注意的是for不止可以遍历list还可以遍历字符串,如下:

for i in 'hello world!':  # 会依次将h、e、l...赋值给i,生成一个['h', 'e'...]的列表
    print(i)


"""
输出:
h
e
l
l
o
 
w
o
r
l
d
!
"""

        嵌套for循环 

                例子:生成九九乘法表

for i in range(1, 10):  # 外循环生成1-9这几个数字
    for j in range(1, 10):  # 内循环生成1-9这几个数字
        print(f'{j} x {i} = {i * j}', end='\t') if i >= j else print(end='')
    print()

"""
输出:
1 x 1 = 1	
1 x 2 = 2	2 x 2 = 4	
1 x 3 = 3	2 x 3 = 6	3 x 3 = 9	
1 x 4 = 4	2 x 4 = 8	3 x 4 = 12	4 x 4 = 16	
1 x 5 = 5	2 x 5 = 10	3 x 5 = 15	4 x 5 = 20	5 x 5 = 25	
1 x 6 = 6	2 x 6 = 12	3 x 6 = 18	4 x 6 = 24	5 x 6 = 30	6 x 6 = 36	
1 x 7 = 7	2 x 7 = 14	3 x 7 = 21	4 x 7 = 28	5 x 7 = 35	6 x 7 = 42	7 x 7 = 49	
1 x 8 = 8	2 x 8 = 16	3 x 8 = 24	4 x 8 = 32	5 x 8 = 40	6 x 8 = 48	7 x 8 = 56	8 x 8 = 64	
1 x 9 = 9	2 x 9 = 18	3 x 9 = 27	4 x 9 = 36	5 x 9 = 45	6 x 9 = 54	7 x 9 = 63	8 x 9 = 72	9 x 9 = 81	
"""

四、break、continue

        break和continue是循环中满足一定条件退出循环的两种不同方式,break直接结束当前循环,continue跳过这一次,重新返回循环初始进行执行

# continue 语法,例子:取出20以内的全部奇数,continue通常搭配if使用
a = []  # 列表
for i in range(20):
    if i % 2 == 0:  # 如果当前数除以2余0,表示这个是偶数
        continue  # 遇见偶数跳过,即后面代码全部忽略,直接跳转到for i in range(20)
    a.append(i)  # 把i加入列表中
print(a)  # 列表中储存了20以内的奇数

# 输出:[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]

         break将会直接直接打破当前正在进行的循环

# 例子:输入密码
i = 3
while i > 0:
    Password = input('输入您的密码:')
    if Password == '1234':
        print('密码输入正确!')
        break
    else:
        print('密码输入错误,您还剩余{}次机会,超过3次将锁卡!'.format(i - 1))
        i -= 1
else:
    print('密码错误次数过多,锁卡!') 

        输出 :

 

# break还可以用于for循环后加上else,即for循环里面的break没有使用,那么就会跳转到else,如下:

for i in range(4):  # 4变为5,那么什么都不输出
    if i == 5:
        break
else:
    print('跳出了')

# 输出:跳出了
  • 转载自:https://blog.csdn.net/Timeers/article/details/120453062
  • 留言