首页 > 其他分享 >列表中有整数、有特殊字符、有字母的排序问题

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

时间:2023-04-06 13:11:41浏览次数:38  
标签:字母 整数 列表 sort1 排序 特殊字符

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

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']

标签:字母,整数,列表,sort1,排序,特殊字符
From: https://www.cnblogs.com/zy7941246/p/17292447.html

相关文章

  • python 列表推导表达式
    如果要对列的每个成员进行指定转换,就可以用列表推导m=[1,2,3,4]n=[]foriinm:#列表迭代n.append(i*60)print(n)#结果:[60,120,180,240]上面的迭代操作就等同于下面这个:m=[1,2,3,4]n=[i*60foriinm]#列表推导,由原来的3行变1行,append操作会自动完成......
  • 元素的多重排序
    应用场景:渲染用户界面时,因为关键的消息和特殊的事件应该优先显示在其他信息之前。numbers=[8,3,1,2,5,4,7,6]//原始数据group={8,3,5,7}//优先级高的数据,defsort_priority(numbers,group):found=Falsedefhelper(x):nonlocalfoun......
  • Auto Chess (双指针, 极角排序)
    题目大意:释放一个45都的技能去尽可能消灭更多的敌人(在一个平面里面)  思路:技能是无线长的,于是抛弃无用信息,只保留斜率即可然后利用双指针,或者二分去做即可 ......
  • Git命令列表--git-restore
    GitRestore名称git-Restore-恢复工作树文件这个命令是试验性的。其行为可能会改变。语法gitrestore[<options>][--source=<tree>][--staged][--worktree][--]<pathspec>…​gitrestore[<options>][--source=<tree>][--staged][--worktree]--pathspec-fr......
  • Git命令列表--git-reset
    GitReset名称git-Reset-重置当前HEAD到指定的状态或者复制条目到索引语法gitreset[-q][<tree-ish>][--]<pathspec>gitreset[-q][--pathspec-from-file=<file>[--pathspec-file-nul]][<tree-ish>]gitreset(--patch|-p)[<tree-ish>][--][<p......
  • python列表的添加的四种方式
    列表删除的五种方式python列表的增删改1、list增加元素1.1append()1.2extend()1.3insert()1.4切片1、list增加元素python中列表增加元素有四种方式:append():在列表末尾添加一个元素extend():在列表末尾添加至少一个元素insert():在列表任意位置添加一个元素切片:在列表任意位......
  • python中列表的删除操作,五种方式
    列表删除操作1、列表删除操作1.1remove()1.2pop()1.3切片1.4clear与del 1、列表删除操作五种方式分别为:remove():一次删除一个元素;如果列表内有重复元素则删除第一个;元素不存在时抛出异常ValueErrorpop():删除一个指定的索引位置上的元素;指定索引不存在则......
  • LeetCode 81. 搜索旋转排序数组 II
    1classSolution{public:boolsearch(vector<int>&nums,inttarget){intindex=-1;for(inti=0;i<nums.size()-1;++i){if(nums[i]>nums[i+1])index=i;}if(index==-1){......
  • HJ103 Redraiment的走法(梅花桩递增可走的最多步数)_排序_动态规划
    思路:该题目符合,最优结果拥有最优子结果的特征。考虑用动态规划。通过循环获取每个参数作为最后一个桩的最优子结果,后面桩的结果为前一个桩的最优子结果+1。如梅花桩“251545”。参考高赞答案,代码如下1importsys2a=int(sys.stdin.readline().strip())3b=list(map(......
  • 自建堆排序:
    建堆(heapification):蛮力算法空堆反复调用insert()接口,消耗时间过多,第k轮迭代需O(logK)时间,正比于其深度:总共需要O(logn!)=O(nlogn);同理于自顶向下、自左向右的上滤操作;实现时先入一个最大值元素,放在下标为0的地方,此后,元素从下标为1的地方进行建堆,假设父节点下标是i,则左右......