python 标志法-优化版(数值判断[正负])、非空判断、退出判断)

liftword5个月前 (01-22)技术文章34

在这个程序中,我们使用了一个标志来指出程序是否处于活动状态,这样如果要添加测试(如elif 语句)以检查是否发生了其他导致quit_msg2变为False 的事件,将很容易。

在复杂的程序中,如很多事件都会导致程序停止运行的游戏中,标志很有用:在其中的任何一个事件导致活动标志变成False 时,主游戏循环将退出,此时可显示一条游戏结束消息,并让用户选择是否要重新玩。

# 标志退出法  将退出程序的条件交给其他语句
def print_input_test():
    quit_msg2 = True    # 退出标志,True:运行;False:退出
    while quit_msg2:
        quit_msg2 = input("请输入一个数字:(输入quit退出程序)\n")
        # 输入不为空
        if quit_msg2.strip() != '':
            # 输入为quit,直接退出程序
            if quit_msg2.strip() == 'quit':
                quit_msg2 = False   # 退出程序
            # 输入不为quit,调用函数判断输入是否为数字
            elif isInt(quit_msg2):
                # 输入为数字,判断是否为3的整数倍,并打印出结果
                if int(quit_msg2) % 3 == 0:
                    print(quit_msg2, "是3的整数倍")
                else:
                    print(quit_msg2, "不是3的整数倍")
            # 输入不为数字,提示重新输入
            else:
                print("你输入的不是数字,请重新输入!\n")
        else:
            # 如果输入为空,继续循环
            quit_msg2 = True

# 判断一个值 是否是数字(包含正负)
# 思考为何不用isnumeric() 、isdigit() 判断输入值
def isInt(number):
    try:
        number=int(str(number)) # 转换为int类型
        return isinstance(number,int)   #判断是否为int类型,如果是,返回True
    except:
        return False    # 非Int类型,返回False


if __name__ == '__main__':
    print_input_test()

相关文章

简单学Python——关键字2——True和False

True和False是Python中的两个关键字,是布尔类型,分别用于表示真和假。1、True和False表示真和假的例子:#将1==2的结果赋值给了x x=1==2 #将1==2的结果赋值给了y y...

Python基础:pass语句知识详解(python中pass)

欢迎你来到站长在线的站长学堂学习Python知识,本文分享的是《pass语句知识详解》。pass的中文翻译:通过;走过;沿某方向前进;向某方向移动;及格;合格;通行证。在Python中表示空的语句,包...

Python open函数详解(python open的用法)

演示环境,操作系统:Win10 21H2(64bit);Python解释器:3.8.10。open是Python的一个内置函数,一般用于本地文件的读写操作。用法如下。my_file = open(fi...

python 基础(四)(python基础总结)

# -- coding: utf-8 -- # @Time : 2022/8/23 15:09 # @Author : siyu.yang # @desc : 第四章 模块,包,文件,日期、时间 #...

Python range():表示某个范围内的数值

range函数作用Python 中的range是表示整数区间的对象,通常用for循环访问。range函数t转的对象可以转换为列表for i in range(5)是一个循环,它遍历从 0 到 4(包括...

Python3查看文件是否存在,以及读、写与执行的属性

目录技术背景代码实现测试分析总结概要版权声明技术背景在使用python对系统文件进行操作的项目中,经常需要用到对本地文件的存在和读写进行判断的操作。最常用的比如os.exists函数,可以很方便的判断...