ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

逻辑运算符和while循环

2022-06-22 22:03:02  阅读:108  来源: 互联网

标签:count 逻辑 name pwd 运算符 while user print


逻辑运算符和while循环

逻辑运算符

and		一假则假,全真则真
or		一真全真,全假则假
not		与原本意思相反
and
# 当使用and逻辑运算符时,左边两边都是需要计算机计算(算术运算)时,输出的结果对应的是布尔值
print(1 == 2 and 10 > 7)  # False
print(5 < 2 and 1 != 3)  # False
print(False and 1 == 1)  # False
print(True and 3 >= 2)  # True
# 当使用and逻辑运算符时,左右边两边有算术运算和数值时,输出的结果得判断
# 若两边判断的结果都成立若数值在后则输出相应的数值,若数值在前输入所对应运算的布尔值
# 若两边判断的结果是成立的但是数值是0则输出的结果是0,不为0则输出对应运算的布尔值
print(1 != 2 and 5)  # 5
print(5 and 1 == 1)  # True
print(3 > 1 and 0)  # 0
print(0 and 1 == 1)  # 0
# 若两边只要有一个结果是不成立时输出的布尔值是False
print(5 and 1 == 5)  # False
print(1 == 2 and 5)  # False
print(3 < 1 and 0)  # False

or
# 从左往右判断,左右两边存在算术运算和数值时
# 若首先判断的是算术运算时若条件成立则输出True,若条件不成立则输出后面的数值
# 若首先判断的是数值不为0的情况下则打印输出的是数值,若首先判断的是数值为0的情况下看后面判断的条件是否成立,若成立打印输出True否则打印输出False
print(1 != 2 or 0)  # True
print(5 or 1 == 1)  # 5
print(5 or 1 == 2)  # 5
print(3 > 1 or 0)  # True
print(0 or 1 == 1)  # True
print(0 or 1 == 2)  # False
print(1 == 2 or 6)  # 6
print(False or 7)  # 7
print(True or 7)  # True
# 左边两边都是数值的情况
# and:输出后面的数据值
print(111 and 22)  # 22
print(33 and 222)  # 222
# or:若第一个数据值不为0则打印输出该数据值,若第一个数据值为0则打印输出的是后面的不为0的数据值
print(111 or 22)  # 111
print(0 or 22)  # 33

while循环

while 条件:
	条件成立后循环执行的子代码

1.while后面的条件一旦成立,子代码便可执行
2.子代码执行后再回到while的条件处进行判断,若条件成立再次执行子代码回到while的条件处判断
3.直到while后的条件不满足时,结束

# 定义用户的用户名和密码,输入用户名和密码实现登录,若登录成功打印登录成功,若登录失败打印用户名和密码错误,且登录可以不断的尝试
name = '橘子'  # 定于用户的用户名
pwd = '313'  # 定义用户的密码
while True:  # 条件一直为True表明条件一直成立
    user_name = input('user_name: ')  # 输入用户名
    user_pwd = input('user_pwd:')  # 输入用户名密码
    if name == user_name and pwd == user_pwd:  # 判断用户的用户名和密码
        print('登录成功!')  # 条件成功打印登录成功
    else:
        print('登录失败!')  # 条件失败打印登录失败

while + break

结束循环体,写完结束条件添加关键字强制结束while循环(当前循环体)。先判断while后的条件,然后再循环体中添加关键字结束循环。

name = '橘子'  # 定于用户的用户名
pwd = '313'  # 定义用户的密码
while True:  # 先判断while后面的条件是否成立
    user_name = input('user_name: ')  # 输入用户名
    user_pwd = input('user_pwd:')  # 输入用户名密码
    if name == user_name and pwd == user_pwd:  # 判断用户名和密码是否正确
        print('登录成功')
        break  # 强制结束,直接结束break所在的循环体 (结束本层循环)
    else:
        print('用户名或密码错误')

while + continue

结束本次循环,开始下一次循环,值结束所在当前循环体。

# 循环打印1到10(按规矩办事)  但是到了7就跳过
count = 1  # 定义count
while count < 11:  # 先判断while后面的条件是否成立
    if count == 7:  # 判断if条件是否成立
        count += 1  # 让count自增1       
        continue  # 跳过本次循环 直接开始下一次循环
    print(count)
    count += 1

while + else

与while循环用法几乎一致,增加了当while条件不成立时执行的条件。

count = 1
while count < 11:
    print(count)
    if count == 7:
        break  # 结束while循环
    count += 1
else:  # while循环结束执行
    print('循环体按照提前定义好的条件正常结束 则会执行')

死循环与全局标志位

1.死循环
count = 2
while True:
    count += 10  # 计算一直循环,不允许出现,有问题
    print(count)

while True:
    name = input('name>>>:')  # 有等待时间,允许出现,没有问题
    print(name)
    
 
2.全局标志位(可不用)
flag = True  # 定义全局标志位为true
while flag:  # 当条件成立执行
    print(111)
    while flag:  # 当条件成立执行
        print(222)
        flag = False  # 相当于条件不成立,结束当前本层while循环

作业

1.准确说出下列判断的结果(不要执行代码)
	v1 = 1 or 3  # 1
    v2 = 1 and 3  # 3
    v3 = 0 and 2 and 1  # 0
    v4 = 0 and 2 or 1  # 1
    v5 = 0 and 2 or 1 or 4  # 1
    v6 = 0 or False and 1  # False
2.编写一个用户登录程序
  用户如果登录失败 则只能尝试三次
  用户如果登录成功 则直接结束程序
	count = 1  # 定义开始次数为1
    user_name = 'orange'  # 定义用户名
    user_pwd = '123'  # 定义用户密码
    while count < 4:  # 用户输入密码的次数只有3次
        count += 1  # 条件成立次数加1
        name = input('Please your name: ')  # 输入用户名
        pwd = input('Please your pwd: ')  # 输入密码
        if name == user_name and pwd == user_pwd:  # 判断用户名和密码是否正确
            print('登录成功!')  # 正确打印登录成功
            break # 登录成功后强制结束循环
        else:
            print('用户名或密码错误!') # 如果用户名或密码错误打印提示

3.编写一个用户登录程序
	用户如果登录失败 可以无限制尝试
	用户如果登录成功 则进入内层循环 获取用户输入的指令 并打印该指令
    	eg: 用户输入cmd指令 则程序打印'正在执行您的指令:cmd'
	给用户提供一个退出命令 用户一旦输入则退出这个程序
    	eg: 用户输入q指令 则程序先打印该指令再结束
            
        user_name = 'orange'  # 定义用户名
        user_pwd = '123'  # 定义用户密码
        q = ['q']
        while True:  # 可一直循环
            name = input('Please your name: ')  # 输入用户名
            pwd = input('Please your pwd: ')  # 输入密码
            if name == user_name and pwd == user_pwd:  # 判断用户名和密码是否正确
                while True:
                    input1 = input('请输入指令: ')
                    if input1 not in q:
                        print('正在执行您的指令:' + input1)
                    elif input1 in q:
                        print(input1)
                        break  # 退出当前输入指令的循环
                break  # 退出当前输入用户名的循环
4.编写猜年龄的游戏(拔高练习 尝试编写)
	用户有三次猜测的机会 如果用完则提示用户是否继续尝试
	用户输入y则继续给三次机会 如果用户输入q则直接结束程序
	
    age = '22'
    count = 1
    Y = 'y'
    Q = 'q'
    while count < 4:
        info = input('输入你认为的年龄:')
        count += 1
        if info == age:
            print('猜对了!')
            break
        else:
            print('猜错了!')
        if count == 4:
            input1 = input('是否继续尝试?(y/q)')
            if input1 == Y:
                count = 1
            elif input1 == Q:
                break

标签:count,逻辑,name,pwd,运算符,while,user,print
来源: https://www.cnblogs.com/xiaojudeboke/p/16403202.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有