逻辑运算符和while循环

2022/6/22 23:21:43

本文主要是介绍逻辑运算符和while循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

逻辑运算符和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



这篇关于逻辑运算符和while循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程