文章目录
用Max函数排序时的index应用技巧
我们已经知道index是一个很高效的方法,我们通过下面的排序题目来说明
###练习题:用Max函数排列列表list1 =[5,8,0,9]里面的元素
题目解读:不完美答案
numbers1 =[5,8,0,9]
new_numbers =[]
while numbers1:
new_numbers.append(max(numbers1)) #这里的效率可优化点是 new_list是否可以在一开始就开辟好,而不是一个个append(虽然我们说append自身是高效的,但我们对高效的追求是无止境的)
numbers1.remove(max(numbers1))
print(new_numbers)
print('^^^^')
print(new_numbers)
print(len(new_numbers))
- FYI: Python max 函数的用法参考 自动化数字化之芯:Python max() 函数
应用index效率优化方法
用乘法一次性开辟够新列表的长度
一般来说append效率不低,但是如果需要大空间的列表,那么一次次append原理上来说不如一次性开辟够
numbers1 =[5,8,0,9]
new_numbers = [None]*len(numbers1)
while numbers1:
for i in range(0,len(numbers1)):
new_numbers[i]=max(numbers1)
# new_numbers.append(max(numbers1)) #这里不再用append,而是做响应的调整
numbers1.remove(max(numbers1))
print(new_numbers)
print('It is the time to see ...the miracle of the Virgin Birth.')
print(new_numbers)