为了账号安全,请及时绑定邮箱和手机立即绑定

我需要我的 Python 代码更简单、更专业

我需要我的 Python 代码更简单、更专业

烙印99 2021-10-26 16:24:59
我用 Python 编写了一个函数,其中包括一个循环和一些条件语句。我想知道如何简化代码。该程序应该执行以下操作:编写一个名为“middle”的函数,它接受一个列表并返回一个包含除第一个和最后一个元素之外的所有元素的新列表。我使用了一个“if”语句和三个“elif”语句,其中两个“elif”语句重复了两行代码。该程序运行完美。但是,我有一种感觉,它可以以更专业(即优雅和简短)的方式编写。def middle():    i=0    list=[]   #an empty list    while True:        entry=input("Enter the list memeber:  ")        if entry !="done":            list.append(entry)            i=i+1        elif i==0:            print("Your list is empty :(!")            exit()        elif i==1:            del list[0]            print("The remaining list is:  ", list)            exit()        elif i>=2:            del list[0]            del list[-1]            print("The remaining list is:  ", list)            exit()middle()
查看完整描述

3 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

你可以解决它

a=[1,2,3,4,5]

b=a[1:-1]

打印(b)


查看完整回答
反对 回复 2021-10-26
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

您可以使用列表切片,例如:


if len(array) > 1:

    array = array[1:-1]

    print("Remaining list is :", array)


else:

    print("Your list is too small")


查看完整回答
反对 回复 2021-10-26
?
萧十郎

TA贡献1815条经验 获得超13个赞

您可以对列表进行切片:


def middle(sample_list):

    sample_list = sample_list[1:-1] # Starting from the second element until one before the last

    print(sample_list) # Print out the list

    return sample_list

middle([5,6,4,3,1]) # Call middle with list as an argument

输出:


[6, 4, 3]

这是一篇关于切片和切片符号的优秀文章,可帮助您进一步理解它。


查看完整回答
反对 回复 2021-10-26
  • 3 回答
  • 0 关注
  • 198 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信