说我有一个清单,
l = [1, 2, 3, 4, 5, 6, 7, 8]
我想获取任意元素的索引及其相邻元素的值。例如,
i = l.index(n)
j = l[i-1]
k = l[i+1]
但是,对于这种情况下i == len(l) - 1
失败的边缘情况。所以我想我会把它包起来,
if i == len(l) - 1:
k = l[0]
else:
k = l[i+1]
有python方式可以做到这一点吗?
您可以使用模运算符!
i = len(l) - 1
jIndex = (i - 1) % len(l)
kIndex = (i + 1) % len(l)
j = l[jIndex]
k = l[kIndex]
或者,不那么冗长:
k = l[(i + 1) % len(l)]
问题内容: 我想对命名元组的列表进行排序,而不必记住字段名的索引。我的解决方案似乎很尴尬,希望有人能提供一个更优雅的解决方案。 谢谢,尼克 问题答案: 按名称排序列表 按年龄排序列表
问题内容: 给定以下元组列表: 我如何将其拼凑成列表? 有没有一线做上面的事情? 问题答案: 您可以使用列表推导: 在以下情况下也经常使用: 但是,这并不是完全一样的。
一旦项目可以展示了—不必完美,只要能看—就可以将其通知给世界了。这是一个非常简单的过程:来到http://freshmeat.net/,在顶端的导航栏点Submit,然后输入你的新项目的通告。Freshmeat是一个大家关注新项目通告的地方。你只需要在那里用项目新闻抓住一些眼球,就会众口相传。 如果你知道某个邮件列表或新闻组会对你的项目合题或感兴趣,那么请在那里通告,但请注意,一个论坛只有一个通告
问题内容: 我有一个函数,其输入参数可以是一个元素或元素列表。如果此参数是单个元素,则将其放在列表中,以便可以以一致的方式遍历输入。 目前我有这个: 我正在使用现有的API,因此无法更改输入参数。使用isinstance()感觉很麻烦,所以有 适当的 方法吗? 问题答案: 我喜欢Andrei Vajna的建议。请注意以下一些典型的Python类型的结果: 这具有将字符串视为不可重复的额外优势-字符
问题内容: 我想知道一种优雅的Pythonic方法,可以在Python 3 中并行 地遍历列表列表(或列表的字典)。列表数量要到运行时才知道,所以我相信我不能简单地将它们作为参数提供该功能。 例如,给定以下数据结构: 我希望能够在每次迭代中访问以下值: 其次是依次类推。 大概我可以直接使用列表索引或使用itertools.chain实现此目的,但是我正在寻找使用生成器或其他方法的更优雅的方法。 问
我目前有一个MxN数据帧,其中包含一个优化问题的解决方案。{M}对中的i的“活动”i、j和{N}对中的j由1表示,“非活动”对由0表示。我需要确定所有活动单元格的I,j值,希望避免索引或列上的for循环。 这将是一个例子: 在这种情况下,我需要的是对的列表(元组可以): 有办法吗? 谢谢 A. 编辑:解释不清楚编辑2:我的解释仍然不清楚