line = lines.split()这句错了,这里的意思是按照空格、换行、制表符分割字符串成列表。
而原来的字符串是用逗号分隔的,应该换成line = lines.split(",")这样,按照逗号分割成列表。
但是这样还是有问题,因为列表中保存的是字符类型的数据,不是数字类型,所以在排序函数中,比较大小的时候会出现问题。可以先将i转成int类型。在if判断前将加一句,如下:
i = int(i)
if x < i:
x = i
这样的话,在删除那里也有问题。
而且,在循环中删除列表的数据有个坑,遍历的时候会漏数据。
例如,第一次循环时,读取的是第一个数,当删除了列表的第一个数据,那么第二个就会顶到第一个;然后循环第二次时,是读取第二个数的,但是第二个数顶到第一个的位置了,第三个就变成第二个,那么就会读取到原来的第三个数据,这样第二个数据就会漏掉。这样每删一次就漏一个。
你读取的不就是字符串吗,split之后也是一个字符串列表啊。
于是遍历列表的时候,字符串不能和整数x比较。