【漫漫转码路】Python Day 08

一、条件语句表达方式

如果if后面接某个值,相当于对这个值进行bool判断;

# 方式一
if 条件:  # else可以省略
    语句一
else:
    语句二
# 方式二
if 条件:  # elif的数量不限
    语句一
elif 条件二:
    语句二
elif 条件三:
    语句三
else:  # else可以省略
    语句四

二、三元表达式

三元表达式是一个表达式,而不是结构化代码

# 例如
# 结果 if 条件 else
sex = input('请输入您的性别:')
print('先生您好,欢迎光临!') if sex == '男' else print('女士您好,欢迎光临!')
# 终端显示
请输入您的性别:男
先生您好,欢迎光临!

if…elif…语句和后面的if嵌套语句都可以写成三元表达式的形式;

三、if语句嵌套

# 例如
first = input('您好,欢迎光临,请问您需要买什么吗?')
if first == '酒':
    se = input('请问您需要什么酒:')
    if se == '白酒':
        print('不好意思卖完了,欢迎您下次再来!')
    elif se == '啤酒':
        print('不好意思啤酒被预定了,欢迎您下次再来!')
    else:
        print('本店没有其他酒类!')    
elif first == '烟':
    th = input('请问您成年了吗?')
    if th == '成年了':
        print('吸烟有害健康,我们不卖烟!')
    else:
        print('抱歉未成年不能买烟')
else:
    print('不好意思,店里现在没有,欢迎您下次光临')
# 终端显示
您好,欢迎光临,请问您需要买什么吗?酒
请问您需要什么酒:红酒
本店没有其他酒类!
# 例如 
# 转换成三行表达式
print ('不好意思卖完了,欢迎您下次再来!') if (se := input('请问您需要什么酒:')) == '白酒' else print('不好意思啤酒被预定了!') if se == '啤酒' else print('本店没有其他酒类!') \
if (first := input('您好,欢迎光临,请问您需要买什么吗?')) == '酒' \
else (print('吸烟有害健康,我们不卖烟!') if (th := input('请问您成年了吗?')) == '成年了' else print('抱歉未成年不能买烟')) if first == '烟' \
else print('不好意思,店里现在没有,欢迎您下次光临')
# 终端显示
您好,欢迎光临,请问您需要买什么吗?烟
请问您成年了吗?未成年
抱歉未成年不能买烟

四、random模块

random.random():返回[0.0,1.0)之间的随机小数;
random.randint(a, b):返回[a, b]范围内的随机整数;(包括b)
random.uniform(a, b):返回[a, b]范围内的随机浮点数;(包括b)
random.choice(seq):从非空序列seq返回一个随机元素,如果seq为空,则报错Index Error;
random.sample(population,k):从序列或者集合中随机获取k个元素,并以列表形式返回;
random.shuffle(x):将可变序列x随机打乱位置,inplace操作;
random.randrange([start,]stop[,step]):从range([start,]stop[,step])中随机返回一个元素;
random.seed([x]):固定随机数,x可以是任意数字;这句之后的随机命令会被固定下来,如果想要在后面的语句取消固定,可以用random.seed();

# 例如
import random
# random.seed(1)
x = [1, 8, 9, 999, 888]
print(random.random())
print(random.randint(0, 1))
print(random.uniform(0, 1))
print(random.choice('seq'))
print(random.sample('population', 3))
random.shuffle(x)
print(x)
print(random.randrange(0, 10, 1))
# 终端显示
0.1135003335822602
0
0.6735321297524828
q
['p', 'n', 'i']
[1, 999, 9, 8, 888]
1

五、实现剪刀石头布游戏

与电脑玩剪刀石头布游戏:

# 例如
import random
player = input('请输入,0:剪刀,1:石头,2:布:')
computer = random.randint(0, 2)
num = {0: '剪刀', 1: '石头', 2: '布'}
num1 = int(player) - int(computer)
print(f'玩家出{num[int(player)]}')
print(f'电脑出{num[int(computer)]}')
if player == computer:
    print('平局')
elif num1 == -1 or num1 == 1:
    print('玩家赢')
else:
    print('电脑赢')
# 终端显示
请输入,0:剪刀,1:石头,2::2
玩家出布
电脑出剪刀
电脑赢

你可能感兴趣的:(转码,python,开发语言,人工智能)