如何用Python基础语法按指定规则对用户输入单词排序
解题思路与代码实现
步骤拆解
- 把输入字符串的字符按类型拆分到4个列表:小写字母、大写字母、奇数数字、偶数数字
- 分别对每个列表做升序排序
- 按「小写→大写→奇数→偶数」的顺序拼接所有字符,得到结果字符串
代码实现
# 获取用户输入的字符串 input_str = input("请输入随机单词:") # 初始化四个空列表,分别存放不同类型的字符 lower_chars = [] upper_chars = [] odd_nums = [] even_nums = [] # 遍历每个字符,判断类型后存入对应列表 for c in input_str: if c.islower(): lower_chars.append(c) elif c.isupper(): upper_chars.append(c) elif c.isdigit(): num = int(c) if num % 2 == 1: odd_nums.append(c) else: even_nums.append(c) # 对每个列表进行升序排序 lower_chars.sort() upper_chars.sort() odd_nums.sort() even_nums.sort() # 拼接所有排序后的字符,生成最终结果 result = ''.join(lower_chars) + ''.join(upper_chars) + ''.join(odd_nums) + ''.join(even_nums) # 输出结果 print("排序后的字符串:", result)
测试验证
输入示例中的OrDenar1234,运行代码后会输出aenrrDO1324,完全符合题目要求。
内容的提问来源于stack exchange,提问作者pab1994
相关产品推荐
相关产品推荐

