那么什么這兩個到底有什么區別和聯系呢?我在網上搜了一下,發現很多說法,雖然大同小異,但是似乎只有下面這一段來自微軟網站的比較高度抽象,而且意義涵蓋深遠。我摘抄過來,看官讀一讀,是否理解,雖然是針對VB而言的,一樣有啟發。
代碼如下:
參數和變量之間的差異 (Visual Basic)
多數情況下,過程必須包含有關調用環境的一些信息。執行重復或共享任務的過程對每次調用使用不同的信息。此信息包含每次調用過程時傳遞給它的變量、常量和表達式。
若要將此信息傳遞給過程,過程先要定義一個形參,然后調用代碼將一個實參傳遞給所定義的形參。 您可以將形參當作一個停車位,而將實參當作一輛汽車。 就像一個停車位可以在不同時間停放不同的汽車一樣,調用代碼在每次調用過程時可以將不同的實參傳遞給同一個形參。
形參表示一個值,過程希望您在調用它時傳遞該值。
當您定義 Function 或 Sub 過程時,需要在緊跟過程名稱的括號內指定形參列表。對于每個形參,您可以指定名稱、數據類型和傳入機制(ByVal (Visual Basic) 或 ByRef (Visual Basic))。您還可以指示某個形參是可選的。這意味著調用代碼不必傳遞它的值。
每個形參的名稱均可作為過程內的局部變量。形參名稱的使用方法與其他任何變量的使用方法相同。
實參表示在您調用過程時傳遞給過程形參的值。調用代碼在調用過程時提供參數。
調用 Function 或 Sub 過程時,需要在緊跟過程名稱的括號內包括實參列表。每個實參均與此列表中位于相同位置的那個形參相對應。
與形參定義不同,實參沒有名稱。每個實參就是一個表達式,它包含零或多個變量、常數和文本。求值的表達式的數據類型通常應與為相應形參定義的數據類型相匹配,并且在任何情況下,該表達式值都必須可轉換為此形參類型。
看官如果硬著頭皮看完這段引文,發現里面有幾個關鍵詞:參數、變量、形參、實參。本來想弄清楚參數和變量,結果又冒出另外兩個東東,更混亂了。請稍安勿躁,本來這段引文就是有點多余,但是,之所以引用,就是讓列位開闊一下眼界,在編程業界,類似的東西有很多名詞。下次聽到有人說這些,不用害怕啦,反正自己聽過了。
在Python中,沒有這么復雜。
看完上面讓人暈頭轉向的引文之后,再看下面的代碼,就會豁然開朗了。
代碼如下:
>>> def add(x): #x是參數
... a = 10 #a是變量
... return a+x
...
>>> x = 3 #x是變量,只不過在函數之外
新聞熱點
疑難解答