嗨,我有一些非常簡單的掙扎。 我只是想生成一系列特定的隨機浮點數,並將它們進行排序從最低到最高。 這就是我如何開始的,如何對隨機浮點數進行排序?
from random import *
#import random
import random
for i in xrange(5):
list= '%2.3f' % random.uniform(0,10)
print list
這段代碼給了我5個隨機浮點數,但我不知道如何對它們進行排序。
嗨,我有一些非常簡單的掙扎。 我只是想生成一系列特定的隨機浮點數,並將它們進行排序從最低到最高。 這就是我如何開始的,如何對隨機浮點數進行排序?
from random import *
#import random
import random
for i in xrange(5):
list= '%2.3f' % random.uniform(0,10)
print list
這段代碼給了我5個隨機浮點數,但我不知道如何對它們進行排序。
您應該創建一個空的列表然後追加的項目吧。然後,您可以使用內置的sorted
函數來打印獲取排序後的數組。
import random
my_list = []
for i in xrange(5):
my_list.append('%2.3f' % random.uniform(0,10))
現在,如果你打印的清單,你會得到:
>>> print my_list
['6.482', '7.542', '8.361', '4.703', '1.174']
這就是你如何對它進行排序:
>>> print sorted(my_list)
['1.174', '4.703', '6.482', '7.542', '8.361']
如果你想永久排序列表使用my_list.sort()
:
>>> my_list.sort()
>>> print my_list
['1.174', '4.703', '6.482', '7.542', '8.361']
我建議建議你不要使用「list」作爲變量名,這是一個非常糟糕的做法。
你的代碼打印五個隨機數,但你是不是將它們存儲在一個list
。
下面是做這件事的一種方式。我使用Python 3.6.1
import random
random_floats = ['{:2.3f}'.format(random.uniform(0, 10)) for _ in range(5)]
print(sorted(random_floats))
sorting
後打印列表元素他們。隨機值在(0, 10)
範圍:
['0.923', '1.004', '2.119', '7.192', '9.477']
像其他人已經建議,應避免使用list
作爲變量名。
編輯:這是一個使用_
作爲一次性變量的Python約定。這裏
最好的辦法是將它們存儲在'list',然後列表進行排序。從不使用'list'作爲變量名稱。 – Arman
你不會把你的號碼放在一個列表中。你只是把它們分配給一個名爲'list'的名字很差的變量。 – khelwood
你需要創建一個像這個list = []這樣的空列表,然後在它後面附上你的數字。這應該是你的出發點 –