2017-03-13 15 views
-5

に、後でそれを使用する関数の引数を保存する方法(パイソン)私は2つの引数を取る関数、リストと番号を持っていると言う:別の関数

def function1(list1,n): 
     #do something 

は、私はまた別の関数が定義されていると言います後で上:

def function2(list2,x): 
    #do something 

私はfunction2内の引数list1を使用する必要があります。どうやってやるの?私はcopy.deepcopy()を使用して変数としてlist1を保存しようとしましたが、それでもエラーが表示されます。どうやってやるの?

+5

パスを '' function2'の引数として。また、エラーが発生したときはいつでも、それが何であるかを教えてください。ちょうどあなたが1つを持っているという事実は、非常に有用ではありません。 – Carcigenicate

+0

[この質問の重複](http://stackoverflow.com/questions/42654905/accessing-a-parameter-passed-to-one-function-in-another-function/42654947#42654947) – Prune

+0

ありがとうございました!あなたにエラーを与えてくれて申し訳ありません。変数をディープコピーすると、 "list1 not defined"と表示されます。それをdeep.copyした後、私は "割り当て前に参照されているローカル変数list1" – grimx

答えて

0

あなたがF1にリストを変更していると仮定すると、f1からlist1を返す:list1`

def f1(list1, n): 
    # do something to the list and n 
    return list1 

def f2(list2, n) 
    # do something 

x = f1(list1, n) 

f2(x, n)