在僞代碼中,可以創建變量,如'variable(x)',將x作爲永久變化的數字,從而創建多個不同的變量。例如,如果:如何在Python中創建連續變化的變量
x = 0
variable(x) = 4
x = 1
variable(x) = 7
然後打印 '變量(0)' 會給你的結果 '4' 和打印 '變量(1)' 將輸出 '7'。我的問題是:這可能在Python中完成嗎?
在僞代碼中,可以創建變量,如'variable(x)',將x作爲永久變化的數字,從而創建多個不同的變量。例如,如果:如何在Python中創建連續變化的變量
x = 0
variable(x) = 4
x = 1
variable(x) = 7
然後打印 '變量(0)' 會給你的結果 '4' 和打印 '變量(1)' 將輸出 '7'。我的問題是:這可能在Python中完成嗎?
您不能在Python中使用完全相同的語法,但您可以使用dict
來近距離使用。
variable = {}
x = 0
variable[x] = 4
x = 1
variable[x] = 7
print(variable[0])
print(variable[1])
如果你的變量的域是一個非負整數,你知道的最大整數先驗,那麼你可以使用一個list
:
variable = [None]*2
x = 0
variable[x] = 4
x = 1
variable[x] = 7
print(variable[0])
print(variable[1])
謝謝你,羅布。這非常有幫助! – Pezbone
最近的可能是一個列表:
x = []
x.append(4)
x.append(7)
print(x[0])
4
print(x[1])
7
如果你不想使用計數作爲標識符,你可以使用Rob的答案。
你可以使用字典
variable = {}
variable['0'] = 4
variable['1'] = 7
x=1
print varibale[x]
將打印7
鑑於你的僞代碼沒有聲明變量,但功能,這是很容易建立這樣的事情:
def my_function(x):
return 3*x + 4
然後你可以
print my_function(0)
4
print my_function(1)
7
當然,您可以在該功能中做幾乎所有的事情;我使用的數學線性映射只是一個例子。您可能正在閱讀整個文件,在其中尋找x
並返回例如行號,您可以跟蹤衛星位置並返回衛星Nr的當前位置。 x
...這是python,一種支持函數的完全成熟的編程語言,就像我能想到的幾乎所有非聲明性編程語言一樣。
你想要類似開關盒的東西嗎?如果是這樣,你可以使用字典。 'def variable(x):return {0:4,1:7} [x]'? –
你想要一個叫做'variable'的數組嗎?那麼你可以調用'variable [0]'來獲得一個值 –
你可能想寫一個*函數*來將'x'映射到不同的值 –