2013-07-30 61 views
2
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

我怎么能这样做?我一直在环顾四周。

+4

你有一些代码,但有关代码?它是否代表不起作用的东西? –

+3

你现在的代码有什么问题? – Doorknob

+0

什么是'用户'?对'function'的输入是否实际上有一个getApple方法,它返回一个带有'eatTheApple'方法的东西? – user2357112

回答

2

只要将b添加为函数的参数,如果我理解正确。

考虑:

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

然后我们可以用测试(假设类用户定义别的地方):

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”值对用户来说是私人的,并且不会改变。我会给你选择,如果它

相关问题