在函数之外使用局部变量

用户名

我知道函数对于将被多次使用的代码很有用,因此我尝试创建一个函数以节省时间并使代码看起来更整洁。我的功能如下所示:

def drawCard():
    drawnCard = random.choice(cardDeck)
    adPos = cardDeck.index(drawnCard)
    drawnCardValue = cardValues[adPos]

但是,我不确定如何返回这些变量,因为它们是local(?)。因此,我不能在函数外部使用这些变量。我只是想知道是否有人可以以一种可以在函数外使用drawCard和DrawnCardValue变量的方式来帮助编辑此函数?

忘了它

用途return

def drawCard():
    drawnCard = random.choice(cardDeck)
    adPos = cardDeck.index(drawnCard)
    drawnCardValue = cardValues[adPos]
    return drawnCard, drawnCardValue

drawnCard, drawnCardValue = drawnCard()

注意,您也可以这样写drawCard

def drawCard():
    adPos = random.randrange(len(cardDeck))
    drawnCard = cardDeck[adPos]
    drawnCardValue = cardValues[adPos]
    return drawnCard, drawnCardValue

cardDeck但是,如果包含重复项,则这两个函数的行为会有所不同cardDeck.index将始终返回第一个索引,因此drawnCardValue将始终对应于重复的第一项。它永远不会返回第二个值(理论上可能是不同的)。

如果您使用,adPos = random.randrange(len(cardDeck))则其中的每个项目cardValue都有相等的机会被选中-假设len(cardValue) == len(cardDeck)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在函数之外使用局部变量

来自分类Dev

在javascript中的函数之外使用局部变量

来自分类Dev

可以在方法之外使用局部变量吗?

来自分类Dev

在Lua的块外使用局部变量?

来自分类Dev

在声明范围之外使用局部变量;为什么这样做?

来自分类Dev

使用局部变量更新函数

来自分类Dev

如何在创建它的函数之外使用变量

来自分类Dev

访问函数局部变量

来自分类Dev

在函数外使用变量

来自分类Dev

再次使用scala构造函数局部变量

来自分类Dev

使用局部变量在函数内设置类成员

来自分类Dev

子函数中是否可以使用局部变量?

来自分类Dev

在回调函数中使用局部变量

来自分类Dev

将局部变量与pandas eval函数配合使用

来自分类Dev

如何在Bash函数中使用局部变量

来自分类Dev

在完成块之外使用变量

来自分类Dev

当我尝试在.each函数之外使用变量时,变量变为Nan

来自分类Dev

在构建函数之外使用BuildContext

来自分类Dev

匿名函数和局部变量

来自分类Dev

警告:函数返回局部变量的地址

来自分类Dev

Python修改函数中的局部变量

来自分类Dev

全局函数中的局部变量

来自分类Dev

检查局部变量返回的函数

来自分类Dev

如何更改返回局部变量的函数

来自分类Dev

Python修改函数中的局部变量

来自分类Dev

在函数外部访问局部变量

来自分类Dev

递归函数中返回的局部变量

来自分类Dev

局部变量作为函数调用的参数

来自分类Dev

在方法/函数内分配局部变量