Python 创建一个对列表进行排序和编号的函数
我想创建/调用一个函数,该函数首先对字符串列表进行排序,然后显示列表中的每个项目,每行按排序和数字顺序显示一个项目Python 创建一个对列表进行排序和编号的函数,python,Python,我想创建/调用一个函数,该函数首先对字符串列表进行排序,然后显示列表中的每个项目,每行按排序和数字顺序显示一个项目 # This is an incomplete function list = ["Hello", "Friend", "Apple", "Banana"] def sorted() sortedlist = sorted(list) for i in sortedlist: print (i) 最终结果如下所示: 苹果 香蕉 朋友 你好 我假设,
# This is an incomplete function
list = ["Hello", "Friend", "Apple", "Banana"]
def sorted()
sortedlist = sorted(list)
for i in sortedlist:
print (i)
最终结果如下所示:
我假设,一旦列表被排序,然后为列表中的每个项目指定一个1、2、3等等,然后打印?一个快速的方法是使用
enumerate
为列表中的每个元素生成一个元组,第一个元素是标签,第二个是项目本身。如果要从1开始,请执行以下操作:
sortedlist = sorted(list)
for i in enumerate(sortedlist, start=1):
print(f"{i[0]}. {i[1]}")
这是一个要求,而不是编程问题。您做了什么,在这个过程中遇到了什么问题?请命名
list
其他内容,以免隐藏内置的list
,然后执行print(list(enumerate(my_list)))
?不要使用函数名sorted()
,因为这实际上是Python中的内置函数。如果删除定义(或重命名它)并执行排序(数组)操作,您会注意到它实际上会返回已排序的列表。列表排序后,枚举函数看起来就像是一种方法,谢谢!我还将避免使用内置函数。为了更直接地回答您的问题,您需要两个函数:(1)一个将实际排序并返回已排序数组的函数。(2) 一个可以打印你的数组的。打印部分(#2)与循环的正确匹配
,但正如@GreenClockGuy所提到的,enumerate最适合您的目标;对于排序部分(#1),它不是bueno。如果您想创建自己的自定义排序函数,请查看此资源。