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

1 回答 1

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)

我假设 User 是某个地方的一个类,所以如果这适合您的情况(可能不适合),可能还有一种更漂亮的方法可以做到这一点。我们有我们的类声明:

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”值是用户个人的,并且不会改变。如果可以,我会给你其他选择

于 2013-07-30T01:52:54.197 回答