我正在尝试制作一段代码,其中用户输入5个数字,代码将删除第5个数字。我的代码出了什么问题?

时间:2016-11-19 18:11:33

标签: python list append typeerror

这是我到目前为止所做的:

def remove_five ():
    list = []
    for x in range(0, 4):
        number = input("Enter a number")
        list.append(number)
    end
    fifth = list[4]
    list.remove(fifth)

remove_five()

运行程序时出现'TypeError'。这就是它所说的: 回溯(最近一次调用最后一次):

文件“G:fivealive.py”,第6行,in     list.append(数字) TypeError:描述符'append'需要'list'对象,但收到'str'

1 个答案:

答案 0 :(得分:1)

  1. 保持缩进正确。
  2. range(0, 4)将生成0..3。你想要range(5)
  3. 如果需要数字,请将输入转换为整数。
  4. 使用del操作删除元素。
  5. 返回创建的列表。
  6. 不要将list用作变量名,因为它是内置类型
  7. 修复它应该是这样的:

    def remove_five ():
        my_list = []
        for x in range(5):
            number = int(input("Enter a number"))
            my_list.append(number)
        del my_list[4]
        return my_list 
    
    my_list = remove_five()