当前位置:   article > 正文

华为机考入门python3--(26)牛客26-字符串排序

华为机考入门python3--(26)牛客26-字符串排序

分类:字符串

知识点:

  1. 字符串是否仅由字母构成    my_str.isalpha()

  2. 字母列表按小写排序    letters.sort(key=lambda x: x.lower())

题目来自【牛客】

图片

  1. def custom_sort(input_str):
  2. letters = []
  3. non_letters = []
  4. for char in input_str:
  5. if char.isalpha():
  6. letters.append(char)
  7. else:
  8. non_letters.append(char)
  9. # lambda x: x.lower() 是一个匿名函数,它接受参数 x(这里代表列表中的每个字母)并返回一个小写形式的 x。
  10. # 因此,通过传递 key=lambda x: x.lower(),可以确保在排序时不区分字母大小写。
  11. letters.sort(key=lambda x: x.lower())
  12. # 新的字符串
  13. result = ''
  14. for char in input_str:
  15. # 如果是字符则从已排序列表中取出第一个
  16. if char.isalpha():
  17. result += letters.pop(0)
  18. else:
  19. result += non_letters.pop(0)
  20. return result
  21. # input_str = "Type"
  22. # print(custom_sort(input_str)) # 输出:'epTy'
  23. # input_str = "BabA"
  24. # print(custom_sort(input_str)) # 输出:'aABb'
  25. # input_str = "By?e"
  26. # print(custom_sort(input_str)) # 输出:'Be?y'
  27. input_str = input().strip()
  28. print(custom_sort(input_str))

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/622262
推荐阅读
相关标签
  

闽ICP备14008679号