输入一个数列 python编程把偏离大的数值剔除,去除重复数字,按照逆序排序,每行一个数字并保留两位小数并输出
时间: 2024-10-18 07:17:00 浏览: 26
在Python中,我们可以使用集合去重,然后遍历这个集合计算每个数的偏离,并根据偏离大小进行排序。这里是一个示例代码片段:
```python
def process_sequence(input_list):
# 去除重复并转换成集合以提高查找速度
unique_numbers = set(input_list)
# 对每个唯一数字计算偏离(假设输入的是原始位置)
deviations = [(number, input_list.index(number) - 1) for number in unique_numbers]
# 按照偏离大小从大到小排序
sorted_deviations = sorted(deviations, key=lambda x: abs(x[1]), reverse=True)
# 保留两位小数并输出
with open('output.txt', 'w', newline='', encoding='utf-8') as file:
for number, deviation in sorted_deviations:
file.write(f'{number:.2f}\n')
# 示例输入
input_list = [4, 5, 2, 7, 5, 9, 2, 11, 6, 4]
process_sequence(input_list)
```
这段代码首先将输入列表转换为集合以去除重复,然后计算每个数字相对于它第一次出现位置的偏离。最后,按绝对值对偏离进行降序排序,再将结果以每行一个数字的形式保存到文本文件中,保留两位小数。
阅读全文