PYTHON只对小写字母进行排序,不对数字进行排序

时间:2017-11-20 23:41:59

标签: python sorting uppercase lowercase

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

输入字符串:

asDaA34sFcCdWt61

输出字符串应为:

aaAcC34dDsFsWt61

这是我到目前为止所拥有的:

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

我已经在我的知识范围内尝试了一切,但没有运气。请帮忙;我充其量只是一个业余爱好者,可以使用很多帮助。

2 个答案:

答案 0 :(得分:0)

使用raw_input代替input

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

答案 1 :(得分:-1)

试试这个:

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检查它是否为字母或字母。 我没有测试过这个,但它应该可以工作