【问题标题】:PYTHON Sort only lowercase letters in place and don't sort numbersPYTHON 只对小写字母进行排序,不对数字进行排序
【发布时间】:2018-05-04 07:37:53
【问题描述】:

我必须编写一个用户输入数字、小写字母和大写字母的代码。然后必须对它们进行分类和打印。棘手的部分是数字必须留在输入的位置,并且不能排序。小写字母必须进行排序,但只保留在最初输入小写字母的位置。大写字母也必须排序,但只保留在最初输入大写字母的位置。我知道这听起来令人困惑,但这里有一个例子:

输入字符串:

asDaA34sFcCdWt61

输出字符串应该是:

aaAcC34dDsFsWt61

这是我目前所拥有的:

x = input("Enter the variables to be sorted: ")
z = list(x)
z.sort()
print(z)

我已经尝试了我所知道的一切,但没有运气。请帮忙;我充其量只是个业余爱好者,可以得到很多帮助。

【问题讨论】:

  • 正确格式化您的代码将是获得帮助的良好开端...
  • @Shadow,谢谢。我改了
  • 欢迎来到 StackOverflow。请阅读并遵循帮助文档中的发布指南。 on topichow to ask 在这里申请。特别是,您没有尝试识别问题中的三类字符:大写、小写和其他内容。以Minimal, complete, verifiable example 的身份向我们提供您最好的尝试——那么我们可以一起努力。

标签: python sorting uppercase lowercase


【解决方案1】:

使用raw_input 代替input

input 将您的输入数据视为代码,而将raw_input 视为字符串。

【讨论】:

    【解决方案2】:

    试试这个:

    x = input("Enter the variables to be sorted: ")
    listofletters = []
    for y in range len(x):
        if x[y].islower() and x[y].isalpha():
            listofletters.append(x[y])
    print(listofletters)
    

    .islower 检查它是否较低,而 .isalpha 检查它是 alpha 还是字母。 我还没有测试过这个,但它应该可以工作

    【讨论】:

      猜你喜欢
      • 2018-03-30
      • 2018-06-14
      • 2015-10-14
      • 1970-01-01
      • 1970-01-01
      • 2018-03-16
      • 1970-01-01
      • 2011-08-29
      • 1970-01-01
      相关资源
      最近更新 更多