实际上可以变通一下,返回的是元组,然后怎么拿到元组中的一个
最简单的就是使用[]
如果 return a,b,c ,想拿到b
使用 fun()[1] // 下标从0开始
首先,代码有误,你想调用的应该是sorted([4,3,2,1])
reversed([4,3,2,1])
然后,你所说的reversed的返回值类型也不正确。
sorted返回的是list,reversed返回的是iterator。
list你应该很熟悉了。iterator和list是完全不同的东西。简单的说iterator只是提供一个接口,每次迭代可以产生一个值,到没有值为止。iterator在很多语言里面都有实现。在python里面主要用在for循环和list comprehension。
iterator和list/tuple/dict/set等容器的关系:
1.python内置的容器类几乎都实现了iterator接口。
显式获取某个容器的iterator可以调用iter函数:
l = [1,2,3,4]
i = iter(l)
//现在i就是一个list iterator。可以用来遍历l这个list.
i.next() # 1
i.next() # 2
//每一个iterator都必须实现next方法。并且在没有元素时抛出StopIteration异常。
在for语句和list comprehension中,都是隐式调用了这个函数。所以可以直接
for obj in some_container:
pass
2.某些容器可以通过iterator进行初始化,比如list
l = [1,2,3,4]
i = iter(l)
l2 = list(i)
最后,没有列表和列表对象这种说法。这两者一般都是指列表对象(instance of the type list)。如果你是想说列表类(the list type)本身,可以这样得到:
type([])
或者
[].__class__