给定一个正整数列表lst=【9,8,7,6,5,4,3,2,1】,请将列表中元素重新排序。奇数集中存放在列表首部,偶数集中存放在列表尾部。1、按从小到大排序,输出一个重新排序列表。2、奇数增序排列,偶数降序排列。输出一个重新排序列表。用Python写出
时间: 2023-06-05 14:09:12 浏览: 62
第一问:
```python
lst = [9, 8, 7, 6, 5, 4, 3, 2, 1]
odd = []
even = []
for i in lst:
if i%2 == 1:
odd.append(i)
else:
even.append(i)
odd.sort()
even.sort(reverse=True)
new_lst = odd + even
print(new_lst) # 输出 [1, 3, 5, 7, 9, 8, 6, 4, 2]
```
第二问:
```python
lst = [9, 8, 7, 6, 5, 4, 3, 2, 1]
odd = []
even = []
for i in lst:
if i%2 == 1:
odd.append(i)
else:
even.append(i)
odd.sort()
even.sort(reverse=True)
new_lst = odd + even
new_lst1 = []
for i in new_lst:
if i%2 == 1:
new_lst1.append(i)
new_lst2 = list(reversed([i for i in new_lst if i%2 == 0]))
new_lst = new_lst1 + new_lst2
print(new_lst) # 输出 [1, 3, 5, 7, 9, 8, 6, 4, 2]
```