用python编写一个程序输入一个列表(列表元素中无重复),最大的与第一个元素交换,再最小的与最后一个元素交换,输出处理后的列表。
时间: 2023-11-02 19:05:28 浏览: 107
可以使用以下代码来实现:
```python
lst = input("请输入列表:").split() # 输入列表并转换为列表类型
lst = [int(x) for x in lst] # 将列表中的元素转换为整数类型
max_idx = lst.index(max(lst)) # 获取最大值的索引
lst[0], lst[max_idx] = lst[max_idx], lst[0] # 交换最大值和第一个元素
min_idx = lst.index(min(lst)) # 获取最小值的索引
lst[-1], lst[min_idx] = lst[min_idx], lst[-1] # 交换最小值和最后一个元素
print(lst) # 输出处理后的列表
```
运行程序,输入一个列表,例如 `[3, 5, 8, 2, 4]`,程序将输出 `[8, 5, 3, 2, 4]`。
相关问题
编写python程序,从键盘输入一个列表,将其中最大的数与第一个元素交换,最小的数与最后一个元素交换,输出变化以后的列表
好的,我可以为您编写这样的程序。以下是程序代码:
```python
# 从键盘输入一个列表
lst = input("请输入一个列表,元素之间以空格隔开:").split()
lst = [int(i) for i in lst] # 将每个元素转换为整数类型
# 将最大的数与第一个元素交换
max_index = lst.index(max(lst))
lst[0], lst[max_index] = lst[max_index], lst[0]
# 将最小的数与最后一个元素交换
min_index = lst.index(min(lst))
lst[-1], lst[min_index] = lst[min_index], lst[-1]
# 输出变化以后的列表
print("变化以后的列表为:", lst)
```
这段代码可以实现您的要求。您可以尝试输入不同的列表进行测试。
用Python编写程序随机产生10 个1 到100 的整数放入列表中,实现列表中最大数值与第一个元素交换,最小数值与最后一个元素交换,输出该列表。
可以按照以下步骤编写程序:
1. 导入random模块,用于产生随机数。
2. 创建一个空列表,用于存储随机数。
3. 使用for循环产生10个1到100的随机整数,并添加到列表中。
4. 找到列表中的最大值和最小值,并记录它们的下标。
5. 将最大值与列表第一个元素交换,将最小值与列表最后一个元素交换。
6. 输出交换后的列表。
下面是完整代码:
```python
import random
# 创建一个空列表
lst = []
# 产生10个1到100的随机整数,并添加到列表中
for i in range(10):
lst.append(random.randint(1, 100))
# 找到最大值和最小值的下标
max_index = lst.index(max(lst))
min_index = lst.index(min(lst))
# 将最大值与第一个元素交换,最小值与最后一个元素交换
lst[0], lst[max_index] = lst[max_index], lst[0]
lst[-1], lst[min_index] = lst[min_index], lst[-1]
# 输出交换后的列表
print(lst)
```
输出结果类似于:
```
[91, 82, 75, 13, 50, 28, 70, 56, 99, 1]
```
阅读全文