是否可以按數值大小的順序顯示一組變量而不訴諸列表? (關於列表大小順序有很多問題,但沒有涉及以這種方式顯示變量) 按大小順序顯示變量(數字)
variable1= random.randint(1,999)
variable2= random.randint(1,999)
variable3= random.randint(1,999)
那麼,即使我不知道尺寸,按照尺寸順序打印這些東西是否有效?
是否可以按數值大小的順序顯示一組變量而不訴諸列表? (關於列表大小順序有很多問題,但沒有涉及以這種方式顯示變量) 按大小順序顯示變量(數字)
variable1= random.randint(1,999)
variable2= random.randint(1,999)
variable3= random.randint(1,999)
那麼,即使我不知道尺寸,按照尺寸順序打印這些東西是否有效?
你可以if語句使用條件。
可能不是最有效的方式做到這一點,但:
x = 1
y = 2
z = 3
if z > y and z > x:
print z
#and so on
我想你明白我的打算了。這樣做可能並不理想,只是想到了什麼。
我不認爲這是OP正在討論的大小。這是存儲在變量中的數值(如問題中所述)。 – martineau
@martineau重讀之後我認爲你是對的。我將編輯,因爲它現在更容易。 –
是的,通過一系列if ... elif
語句,每次添加值/變量時複雜度都會增加。
爲什麼你不想使用列表?這會更簡單。
如果需要或真想使用變量,那麼如何對這種做法:
import random
variable1 = random.randint(1,999)
variable2 = random.randint(1,999)
variable3 = random.randint(1,999)
var_name_list = []
var_name_list.append('variable1')
var_name_list.append('variable2')
var_name_list.append('variable3')
for value in sorted([ eval(var_name) for var_name in var_name_list ]):
print(value)
不,沒有任何明顯的方法可以按照排序順序打印某些變量,而不需要使用**列表** – ZdaR
您可以使用一系列嵌套的if語句來執行此操作,但這很快就會失控,針對超過約3個變量。你有什麼反對將它們列入清單並整理它? – martineau
所以你想打印一個已排序的數字列表,但你不想先排序數字? – csmckelvey