返回顶部
扶摇直上九万里,展翅高飞岂可待。

Python——程序中的循环(五)

1. 第一个循环-while

#coding=utf-8
# while 循环
i = 1
while i < 5:  # 永远为True
    print (i)
    # 这里需要一个控制方向
    i = i + 1
    print ("计算后此时i的值是:" +str(i))

"""
while 条件表达式:
    逻辑语句
当条件表达式为True时,循环执行
当条件表达式为False时,循环就停止了

第一种结束的情况时条件判断失败,循环自动结束
"""

# break 跳出循环
print ("*"*10)
i = 1
while i < 10:
    print (i)
    if i == 5:
        print ("现在i的值是5,我要跳出循环")
        break
    print ("i的值还没有到5.需要进行加法运算")
    i = i + 1
print ("代码执行完毕")

print打印结果:

1
计算后此时i的值是:2
2
计算后此时i的值是:3
3
计算后此时i的值是:4
4
计算后此时i的值是:5
**********
1
i的值还没有到5.需要进行加法运算
2
i的值还没有到5.需要进行加法运算
3
i的值还没有到5.需要进行加法运算
4
i的值还没有到5.需要进行加法运算
5
现在i的值是5,我要跳出循环
代码执行完毕

2. 赋值运算符

#coding=utf-8
i = 1
print (i)

"""
+
-
*
/
% 取余数
** 幂运算,平方
// 相除取整数部分
"""
i = 1
# i = i + 1  #是把i + 1 的结果再次赋值给i
i += 1
print (i)

"""
i += 1   :   i = i + 1
*= 2   :   i = i *2
/= 3   :   i = i / 3
-= 4   :   i = i - 4
%= 2   :  i = i % 2
**= 2  :   i = i ** 2
//=3   :   i = i // 3

"""
i = 5
i -= 2  # i = i - 2
print (i)

print打印结果:

1
2
3

3. 一起写个计算器

# coding=utf-8
# 简易计算器

# 我们输入第一个数字
result = input("请输入第一个数字:")
# 输入一个计算的符号
operator = input("请输入运算符号:")
# 输入第二个数字
second_number = input("输入第二个数字:")
# 数据类型转换
result = float(result)
second_number = float(second_number)
# 按照所输入的计算的符号进行结果运算
if operator == "+":
    result += second_number
elif operator == "-":
    result -= second_number
elif operator == "*":
    result *= second_number
elif operator == "/":
    result /= second_number
elif operator == "%":
    result %= second_number
elif operator == "**":
    result **= second_number
elif operator == "//":
    result //= second_number
else:
    print("没有匹配到正确的运算符")
print ("计算的结果:" + str(result))


"""
新需求:
1、我们可以进行多次的运算,不仅仅只支持俩个数字的运算
    例如: 1+2+3+4+5
2、如果我们按键盘上的字母q,那么意味着退出运算,运算结束
3、如果我们按键盘上的字母c,那么意味着清除之前的运算,重新开始
"""

4.完善计算器

# coding=utf-8
# 声明一个变量记录是第几次计算
number_of_times = 1
while True:
    # 判断是不是第一次运算,然后在进行不同方式的计算
    if number_of_times == 1:
        result = input("请输入第一个数字:")
        operator = input("请输入操作符号:")
        if operator == "q":
            print ("计算程序退出")
            break
        elif operator == "c":
            print ("计算器清零,重新计算")
            result = 0
            # 将计算次数也需要重置为1
            number_of_times = 1
            continue
        second_number = input("请输入第二个数字")
        # 数据类型转换
        result = float(result)
        second_number = float(second_number)
        # 按照所输入的计算的符号进行结果运算
        if operator == "+":
            result += second_number
        elif operator == "-":
            result -= second_number
        elif operator == "*":
            result *= second_number
        elif operator == "/":
            result /= second_number
        elif operator == "%":
            result %= second_number
        elif operator == "**":
            result **= second_number
        elif operator == "//":
            result //= second_number
        else:
            print("没有匹配到正确的运算符")
        print ("计算的结果:" + str(result))
        # 把操作次数加上1
        number_of_times += 1
    else:
        operator = input("请输入操作符号:")
        if operator == "q":
            print ("计算程序退出")
            break
        elif operator == "c":
            print ("计算器清零,重新计算")
            result = 0
            # 将计算次数也需要重置为1
            number_of_times = 1
            continue
        second_number = input("请输入数字:")
        result = float(result)
        second_number = float(second_number)
        # 按照所输入的计算的符号进行结果运算
        if operator == "+":
            result += second_number
        elif operator == "-":
            result -= second_number
        elif operator == "*":
            result *= second_number
        elif operator == "/":
            result /= second_number
        elif operator == "%":
            result %= second_number
        elif operator == "**":
            result **= second_number
        elif operator == "//":
            result //= second_number
        else:
            print("没有匹配到正确的运算符")
        print ("当前是第" + str(number_of_times) + "次运算")
        print ("计算的结果:" + str(result))
        # 把操作次数加上1
        number_of_times += 1
posted @ 2023-03-21 09:48  孙凯玉  阅读(38)  评论(0编辑  收藏  举报