python在if语句中定义一个变量

2024-05-12 22:23:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在python中掷硬币/骰子,但我不知道如何在if语句中定义/更改变量。

import random
def roll(number):
    if(number==1):
        {print("Take a moment to think that through")}
    if(number==2):
        {b=random.randint(0,1)
        if(b=0):
            {ba=1}
        else:
            {bb=1}
        }

部分{b=random.randint(0,1)}=以红色突出显示,并标记为语法错误。我也试过:

import random
b=0
def roll(number):
    if(number==1):
        {print("Take a moment to think that through")}
    if(number==2):
        {b+=random.randint(0,1)
        if(b=0):
            {ba=1}
        else:
            {bb=1}
        }

这会产生相同的错误,并且会突出显示=而不是+

在您询问之前,函数roll(number)在shell中被调用。外壳是我的接口。


Tags: toimportnumberifthatdefrandomprint
2条回答

你还应该考虑如果有人进入,会发生什么,例如,滚(15)。

import random
def roll(number):
    if number==1:
        print("Take a moment to think that through")
    elif number==2:
        b=random.randint(0,1)
        if b==0:
            ba=1
        else:
            bb=1
    else:
        print("What should happen in this case?") 

还有,@grrr:if b==0

import random
def roll(number):
    if number==1:
        print("Take a moment to think that through")
    if number==2:
        b=random.randint(0,1)
        if b==0:
            ba=1
        else:
            bb=1

Python不使用大括号,您应该这样编写代码,还必须在函数中返回一些东西,这就是您如何将函数/变量与其他方法一起使用的方法。

import random
def roll(number):
    if number==1:
        my_string="Take a moment to think that through"
        return my_string
    if number==2:
        b=random.randint(0,1)
        if b==0:
            ba=1
        else:
            bb=1
        return ba,bb

像这样的东西,我不知道你的全部代码。

相关问题 更多 >