Python挑战练习-17题
编写一个Python程序,找出列表中第n小的整数。
-
定义函数
find_nth_smallest(),该函数接受整数列表numbers_list和整数n作为参数。 -
在函数内部,返回列表中第
n小的整数。 -
如果
n大于列表的长度,则返回None。def find_nth_smallest(numbers_list, n): # 此处编写你的代码 numbers_list.sort() if n>len(numbers_list): return None else: return numbers_list[n-1] # 将输入的整数转换为列表 numbers_list = list(map(int, input().split())) # 获取n的输入 n = int(input()) # 调用函数 print(find_nth_smallest(numbers_list, n))注意:
-
sort方法是对原列表进行原地排序,它的返回值是None,而不是排序后的列表。sorted函数和sort方法的区别与联系
-
相似:起到排序的作用
-
区别:①返回值不同
sorted函数:它会返回一个新的已排好序的可迭代对象,原可迭代对象本身不会被修改。
original_list = [3, 1, 2]
sorted_list = sorted(original_list)
print(original_list) # 输出: [3, 1, 2],原列表不变
print(sorted_list) # 输出: [1, 2, 3],返回新的排序后的列表
sort方法:它是直接对调用它的可迭代对象(如列表)进行原地排序,没有返回值(或者说返回值为None)
original_list = [3, 1, 2]
result = original_list.sort()
print(original_list) # 输出: [1, 2, 3],原列表被修改
print(result) # 输出: None
②调用方式不同
sorted函数:它的语法是sorted(iterable, key=None, reverse=False),其中iterable是要排序的可迭代对象,key是一个可选的函数,用于指定排序的依据(例如按照元素的某个属性或经过某个函数处理后的结果进行排序),reverse是一个可选的布尔值,用于指定是否降序排序。它可以对任何可迭代对象进行排序,如列表、元组、集合(返回排序后的列表)、字典(返回排序后的键列表)等。例如:
tuple_example = (3, 1, 2)
sorted_tuple = sorted(tuple_example)
print(sorted_tuple) # 输出: [1, 2, 3],对元组排序返回新列表
sort方法:它是列表对象的一个内置方法,语法是list.sort(key=None, reverse=False),只能用于列表对象。例如:
list_example = [3, 1, 2]
list_example.sort()
print(list_example) # 输出: [1, 2, 3],直接修改列表本身
796

被折叠的 条评论
为什么被折叠?



