寫這個是因為乙個熱心的豆瓣網友給我出了個思考題。菜菜如我,思考了一下,給了乙份**。
#生成的列表
new_list =
#統計有哪些數
set_list = np.unique(list)
#統計每個數出現的次數
count_list =
for i in set_list:
#生成字典
list1 = dict(zip(set_list,count_list))
print('list1',list1)
#出現次數排序
from operator import itemgetter
list2 =[index for index,value in sorted(enumerate(list1),key=itemgetter(1),reverse=true)]
print('list2',list2)
count_number = 0
for i in list2:
if list1[i] == 1:#出現次數為1的數字
count_number += 1
elif list1[i] != 1:
k = list1[i]
count_number += k
for j in range(k):
new_list.insert(j * int(count_number/k),i)
print(new_list)
return new_list
list = [0,0,0,0,1,1,1,0,2,3,0,0,0,1,2,4]
distribution(list)
結果。
list1
list2 [4, 3, 2, 1, 0]
[0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, 0, 1, 0, 3]
好像還可以吧。 C 將1 100隨機不重複的放入陣列
換個思路,將1 100放入集合,從中選取數字放入結果陣列中,然後將已選過的數字從集合中移除。這樣每一次隨機都能選到數字,而不會多次拋棄隨機出來的值。int num new int 100 定義陣列 for int i 1 i 100 i arraylist al new arraylist num ...
python小技巧 將方法放入類庫中
在寫自動化指令碼的時候,常常用到一些製造資料的函式,每次引用的時候需要將檔案加到專案中,比較麻煩,推薦一種一勞永逸的方法 將自己的類方法放入類庫中 第一步 在python的 lib site packages目錄中新建乙個資料夾 命名隨意 例如 第二步 將自己寫好的python檔案放入到該資料夾下 ...
python如何將字元陣列轉為數字型陣列
有乙個數字字元的列表 numbers 1 5 10 8 想要把每個元素轉換為數字 numbers 1,5,10,8 用乙個迴圈來解決 new numbers for n in numbers int n numbers new numbers 有沒有更簡單的語句可以做到呢?numbers int x...