我不太了解 python,但是我有一个变量,里面至少存储了 100 个值。名称是self.data
目前正在这样订购。 self.data.sort()
此 sort() 按数字对值进行排序,例如 1,2,3
但是我创建了一个数据库,它将按特定顺序存储变量。我怎样才能让Python按该顺序对变量进行排序。
例如数据库变量是
客户 ID
5
6
4
1
self.data.sort()= 1,2,3,4...
我需要帮助创建一个函数,该函数将对变量进行排序以匹配数据库。
self.data.customSort()=5,6,4,1...
最佳答案
你可以创建一个比较函数,让我们看一个例子: 我们只想对数组中小于 5 的每个元素进行排序。因此,如果元素 < 5,它将转到“左侧”。首先,我们必须创建一个返回 -1(真)、1(假)或 0 的比较函数。
def mySort(a):
if a < 5:
return -1
elif a > 5:
return 1
return 0
lst = [6,8,3,4,68,1,2]
lst = sorted(lst, key=mySort)
打印(lst)
输出: [3,4,1,2,6,8,68]
正如您现在所看到的,该数组已使用我的函数 mySort 进行排序,您可以使用特殊的“排序函数”来遵循您的数据库结构。希望这会有所帮助
关于python - 对 python 变量进行排序以匹配另一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33096832/