python - 有条件地从列表中选择下一个元素

标签 python list select element

初学者问题:

假设我有以下列表,

list=['spam', 'eggs', 'ham', 'foo', 'bar']

我想检查某个项目是否在列表中。如果该项目在列表中,我想选择下一个项目。例如。如果eggslist中,我想返回ham

我的问题类似于this one ,但我不想想要指定下一个元素。 IE。我希望代码根据初始元素的位置返回下一个项目。

类似于,

if 'eggs' in list:
     next = item(position of eggs + 1)

我该怎么办?

最佳答案

假设只有 1 个项目具有相同的值(否则 index 无法按预期工作,因为它返回第一个 出现的索引),您可以这样做:

l=['spam', 'eggs', 'ham', 'foo', 'bar']

try:
    next_element = l[l.index('eggs')+1]
except (ValueError,IndexError):
    next_element = ""

print(next_element)

如果元素未找到或位于最后,则捕获异常并且不打印任何内容。

顺便说一句:我更改了 listnext 名称,因为它们是内置名称。

关于python - 有条件地从列表中选择下一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43052067/

相关文章:

python - 当模块分配给变量时如何使用模块中的方法

c# - 使用搜索字符串对列表进行排序

php - 如何读取sql中的当前值

php - 无法选择 * (ORA-00932 : inconsistent datatypes: expected CHAR got ADT)

python - 使用具有自签名证书的 django-sslserver 在本地主机上进行的 django facebook 应用程序测试被拒绝

Python 输入问题?

python lambda,过滤掉非字母字符

python - 根据差异对列表中最近的元素进行分组

select - Golang - 使用两个 Reader 返回行作为 select 语句

python - MongoEngine 中的子查询