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

时间:2015-01-03 23:42:22

标签: python variables if-statement coin-flipping

我想在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}
        }

给出相同的错误,并且=突出显示,而不是+

在你问之前,在shell中调用函数roll(number)。 shell是我的界面。

2 个答案:

答案 0 :(得分:3)

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

像这样,我不知道你的整个代码。

答案 1 :(得分:-1)

如果有人进入,例如roll(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