python的使用列表

(1)从键盘任意输入多个整数,使用这些数据创建列表,输出其中的最大值及其相邻的元索(提示,这里采用切片操作获取数据)。
(2)从键盘输入一个数据,查找其在列表中的位置。如果该数据在列表中,输出其位置,然后将其从列表中州除;否则将其添加到列表中。同时显示相应信息。
(3)将列表中的数据按从小到大的顺序输出。
输出示例
原始列表
最大值及相邻元素
6是第2个数
己从列表中删除6
排序后的数据

该回答引用GPT:

# 从键盘任意输入多个整数,使用这些数据创建列表,输出其中的最大值及其相邻的元素
list1 = list(map(int, input().split()))
max_num = max(list1)
max_index = list1.index(max_num)
print('原始列表最大值及相邻元素:', list1[max_index-1], max_num, list1[max_index+1])

# 从键盘输入一个数据,查找其在列表中的位置
num = int(input('请输入一个数:'))
if num in list1:
    index = list1.index(num)
    print('{}在列表中的位置是第{}个数,已从列表中删除'.format(num, index+1))
    list1.remove(num)
else:
    list1.append(num)
    print('{}不在列表中,已添加到列表中'.format(num))

# 将列表中的数据按从小到大的顺序输出
list1.sort()
print('排序后的数据:', list1)

如还有疑问,可留言帮助解决。

参考如下,注意要判断左右没有相邻的情况,防止列表越界:

list_num = [int(i) for i in input().split(" ")]
max_num = max(list_num)

if len(list_num) == 1:
    print("输入列表中的最大值为:%d,无相邻数" % max_num)
else:
    if list_num.index(max_num) == 0:
        right_num = list_num[list_num.index(max_num) + 1]
        print("输入列表中的最大值为:%d,无左边相邻,右边相邻的是:%d" % (max_num, right_num))
    elif list_num.index(max_num) == len(list_num) - 1:
        left_num = list_num[list_num.index(max_num) - 1]
        print("输入列表中的最大值为:%d,左边相邻的是:%d,无右边相邻" % (max_num, left_num))
    else:
        left_num = list_num[list_num.index(max_num) - 1]
        right_num = list_num[list_num.index(max_num) + 1]
        print("输入列表中的最大值为:%d,左边相邻的是:%d,右边相邻的是:%d" % (max_num, left_num, right_num))

now_num = int(input())
if now_num in list_num:
    print("其在列表中的位置为:%d" % list_num.index(now_num))
    list_num.remove(now_num)
    print("%d已从列表中删除" % now_num)
else:
    list_num.append(now_num)
    print("%d已添加列表中" % now_num)

print("重新排序后的列表为:", sorted(list_num))

效果如下:

img

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^