少し前に私はここでこの質問をしました:Pythonでのリストのソート
私はここにこのコードを持っています:
def sort(names, rank):
lst=[]
for x in range(0, len(names)):
lst.append((int(rank[x]), names[x]))
lst.sort(key=lambda x: (-x[0],len(x[1])) )
newArr = []
for z in range(0, len(lst)):
row = lst[z]
newArr.append(row[1] + " " + str(row[0]))
return newArr
ただし、名前をさらに並べ替える必要もあります。名前の長さが同じである場合は、大文字の名前が最初に来る必要があります。何か案は?