2013-10-16 51 views
-2

我需要在我正在使用的遊戲中的主遊標中的一個腳本中創建一個變量,其中PythonPygame使用Python和Pygame將值分配給單獨的腳本中的變量

例如:

def test(): 
    a = 10 
def testing(): 
    return a 

然後我運行這樣的代碼:

import (script name) 
script name.test() 
script name.testing() 

並在此之後,它給出了一個錯誤。我該如何解決這個問題?

+0

歡迎來到Stack Overflow!注意:*它不起作用*是一個可怕的問題描述。請在問題描述中明確幷包含您看到的任何錯誤消息。 –

+0

這也是一個非常基本的問題;再次閱讀Python教程;函數內部的名稱是本地的,並且不會被其他函數看到。 –

+0

@Endoro:它不是重複的,因爲這個問題的一個可能的答案是使得一個封裝了值「a」的對象「Test()」,然後't.test()'計算'self.a'和' t.testing()'可以返回它。如果在'test()'中計算了很多變量,它就會縮放。一個實際的例子是一個配置對象,它有一個計算默認值的方法和檢索這些值的方法。 「範圍規則」不會建議這樣的答案。 – jfs

回答

1

testing()中的'a'不是全局變量,因此它不能從前面的函數test()中識別出來。如果你真的想用test()中的'a',那麼你可以將'a'定義爲全局變量。

+0

好吧,我以前的一羣,但不知道該怎麼做 –

相關問題