2013-07-30 3 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'에 대한 입력은 실제로'eatApplication' 메소드를 가진 것을 돌려주는'getApple' 메쏘드를 가지고 있습니까? – user2357112

답변

2

정확하게 이해하면 b를 함수의 매개 변수로 추가하십시오.

import random 
myUser = User() 

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

우리는 두 개의 매개 변수의 기능을 만들었는데, 모두를 통과 : (다른 곳에서 정의 된 클래스의 사용자를 가정)

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

그리고 우리가 테스트 할 수 있습니다 :

고려 에서! 대안은 다음과 같습니다이 (가되지 않을 수 있습니다) 귀하의 상황에 적합한 경우

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() 

파이썬은 객체 지향 설계를 좋아하는, 그래서 이것은 좋은 것입니다! 그러나 "b"값은 사용자에게 개인적이며 변경되지 않는다고 가정합니다. 나는 당신에게 대안을 줄 것이다.

관련 문제