编写代码:创建一个含有n个元素的列表,使前n/2个元素从大到小逆序排序,后n/2个元素从小到大顾序排列。 提示:用到切片,len涵数,排序函数等
时间: 2023-05-22 12:05:12 浏览: 36
可以参考以下代码:
lst = list(range(1, n+1))
mid = len(lst) // 2
lst[:mid] = sorted(lst[:mid], reverse=True)
lst[mid:] = sorted(lst[mid:])
print(lst)
相关问题
用 python 写一个创建一个含有 n 个元素的列表,使前 n/2 个元素从大到小逆序排序,后 n/2 个元素从小到大排序
可以使用以下代码实现:
```python
n = 10
# 生成随机列表
lst = [random.randint(0, 100) for _ in range(n)]
# 对前 n/2 个元素进行逆序排序
lst[:n//2] = sorted(lst[:n//2], reverse=True)
# 对后 n/2 个元素进行正序排序
lst[n//2:] = sorted(lst[n//2:])
print(lst)
```
其中,`random.randint(0, 100)`用于生成随机数,`sorted()`函数用于排序,`[::-1]`表示对列表进行逆序操作。
创建一个含有n个元素的列表,使前n/2个元素逆序排列,然后整体逆序排列。
可以参考下面的代码实现:
```python
n = 10
lst = list(range(1, n + 1))
# 逆序前n/2个元素
lst[:n//2] = reversed(lst[:n//2])
# 整体逆序排列
lst = list(reversed(lst))
print(lst)
```
首先,我们创建一个包含n个元素的列表`lst`,并使用`range`函数初始化它。然后,我们使用切片和`reversed`函数将列表的前n/2个元素逆序排列。接下来,我们使用`reversed`函数将整个列表逆序排列。最后,我们打印出最终的列表`lst`。