给定一个整数列表确实存在一个默认方法找到值之间的最大距离?
所以,如果我有这个数组
[1, 3, 5, 9, 15, 30]
Run Code Online (Sandbox Code Playgroud)
值之间的最大步长为15.列表对象是否有方法执行此操作?
不,list对象没有标准的"相邻差异"方法等.但是,使用食谱中pairwise提到的功能:itertools
def pairwise(iterable):
a, b = tee(iterable)
next(b, None)
return izip(a, b)
Run Code Online (Sandbox Code Playgroud)
......你可以(简明而有效地)定义
>>> max(b-a for (a,b) in pairwise([1, 3, 5, 9, 15, 30]))
15
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
755 次 |
| 最近记录: |