在函数中使用变量

时间:2013-07-30 01:46:30

标签: python list function variables

import random

b = random.choice([2309,1897,2307])

def function(user):
    user.getApple().eatTheApple(b, 2000, 50, 1, 8663, 4444)

我对python很新,但我很快就接受了。 B是变量,它等于4位数。这个4位数字将随机挑选。

然后我希望将此值与其他固定值(如2000,50,1,8663和4444)放在一起。

我怎么能这样做?我一直在四处寻找。

1 个答案:

答案 0 :(得分:2)

如果我理解正确的话,只需添加b作为函数的参数。

考虑:

def function(user,b):
    user.getApple().eatTheApple(b, 2000, 50, 1, 8663, 4444)

然后我们可以测试(假设在其他地方定义了User类):

import random
myUser = User()

b = random.choice([2309,1897,2307])
function( myUser , b )

我们已经创建了两个参数的函数,并将它们都传递给了!另一种选择是:

def function(user):
    user.getApple().eatTheApple( random.choice([2309,1897,2307], 2000, 50, 1, 8663, 4444)

我认为用户是某个类的某个类,所以如果这适合你的情况(可能不是这样),那么可能还有一种更漂亮的方法可以做到这一点。我们有我们的班级声明:

class User:
    def __init__( self ):
        #this code is executed when the class is created
        self.b = random.choice([2309,1897,2307])

    def function( self ):
        #this code is owned by each User object
        user.getApple().eatTheApple(self.b, 2000, 50, 1, 8663, 4444)

那将由以下人员执行:

myUser = User()
myUser.function()

Python喜欢面向对象的设计,所以这样会很好!但是,它假定“b”值对用户来说是个人的,并且不会改变。如果有的话,我会给你替代品