python 逻辑运算 ‘and’ ,'or' 在实战中的作用,代替if语句。

彩票程序:
课上方法:
import random

# 生成一个随机两位数  作为一个中奖号码
luck_num = random.randint(10,99)
print(luck_num)
luck_num_g = luck_num % 10
luck_num_s = luck_num // 10
# 用户输入一个购买的数字
buy_num = int(input("请输入要购买的两位幸运数字:"))
buy_num_g = buy_num % 10
buy_num_s = buy_num // 10
# 一等奖    两个数字全对  而且顺序一样
if luck_num == buy_num:
    print("一等奖,奖品《python从入门到升仙》")
# 二等奖     两个数字全对  但是顺序不一样
    # 购买的个位数字和幸运数字的十位相同 并且 购买的十位数字和幸运数字的个位相同
elif buy_num_g == luck_num_s and buy_num_s == luck_num_g:
    print("二等奖,奖品《Python从入门到放弃》")
# 三等奖     只对一个数字
    # 购买的个位数字可能和幸运数字的个位数字相同   或者
    # 购买的个位数字可能和幸运数字的十位相同      或者
    # 购买的十位数字可能和幸运数字的个位相同     或者
    # 购买的十位数字可能和幸运数字的十位相同
elif buy_num_g == luck_num_g or buy_num_g == luck_num_s or buy_num_s == luck_num_g or buy_num_s == luck_num_s:
    print("三等奖,奖品《Python从入门到住院》")
# 其它的没有奖 一个数字都不对
else:
    print("又挣你两块钱~~~")

#方法2
# import random
# luck_num = random.randint(11,66)
# print(luck_num)
# a = luck_num_gewei = luck_num % 10
# b = luck_num_shiwei = luck_num // 10
#
# buy_num = int(input('please input you number : '))
# c = buy_num_gewei = buy_num % 10
# d = buy_num_shiwei = buy_num // 10
# print((a == c and b == d) and 'first price'or (a == d and b == c) and 'second price' or (a == c or a == d or b ==c or b == d) and 'third price' or 'none')
#逻辑运算符在if语句中应用的方法技巧:
‘’‘
print(条件1 and 结果1 or 条件2 and 结果2 or 结果3)
相当于:
if 条件1:
    结果1
elif 条件2:
    结果2
else:
    结果3
’‘’
if 语句 进阶 效果
‘’‘
‘’‘
#if   elif    else    都可以直接转换为下面这种格式,注意,输出语句不要写print,直接写输出内容就#好,亲测。
print( (条件1.1 and 条件1.2) and 结果1 or (条件2.1 or 条件2.2) and 结果2 or 结果3)
相当于:
if 条件1.1 and 条件1.2:
    结果1
elif 条件2.1 or 条件2.2:
    结果2
else:
    结果3
############################################
print(a and b) #and:一假则假,所以a为假或者0,则输出a,否则输出b
print(a or b) #or 一真则真,如果a不是0或者false,则a为真,输出a,否则,输出b

 

展开阅读全文

没有更多推荐了,返回首页