列表中有整数、有特殊字符、有字母的排序问题

列表中有整数、有特殊字符、有字母

a = [2,1,3,5,4,'d','f','e','c','a','b','?','*','&']

# 定义一个函数

def sort1(x):

  if isinstance(x,int):   # 判断传入的参数中是否有整数

    return x  # 有整数返回整数本身

  return ord(x)  # 没有整数,返回ASCII码

a.sort(key=sort1)  # 将列表a中的每个元素传入到函数sort1中,得到返回值,然后对返回值排序

[1, 2, 3, 4, 5, '&', '*', '?', 'a', 'b', 'c', 'd', 'e', 'f']

posted @ 2023-04-06 13:02  半步多爱你  阅读(33)  评论(0)    收藏  举报