我正在尝试在列表中找到最小/最大数字,其中还包括一个列表。
list1 = (24,35,18,25)
#Find the min int:
min(83,23,88,[list1])
这将返回错误:
TypeError: '<' not supported between instances of 'tuple' and 'int'
有没有一种方法可以将此min语句编码为一行,而不是附加到新列表中?
答案 0 :(得分:4)
使用其他参数解压缩现有的tuple
:
min(83, 23, 88, *list1)
这会传递list1
的元素,就好像它们是其他位置参数一样。
或者,通过串联,构建一个新的iterable并将其作为唯一参数传递:
min((83, 23, 88) + list1) # Note: In your code, list1 is actually a tuple, not a list,
# so I had to match it with a tuple
或通过列表文字解压缩(Python 3.5中的新增功能):
min([83, 23, 88, *list1])
仅串联需要匹配的类型;对于解压缩,list1
的确切类型是什么都没关系,只要它是可迭代的即可。
答案 1 :(得分:0)
您可以串联列表:
secret: '',
token: '',
domain: 'http://localhost:3000/directline',
webSocket: false // defaults to true