相关疑难解决方法(0)

什么是pythonic方法来检测python'for'循环中的最后一个元素?

我想知道对for循环中的最后一个元素进行特殊处理的最佳方法(更紧凑和"pythonic"方式).有一段代码只能元素之间调用,在最后一个元素中被抑制.

以下是我目前的工作方式:

for i, data in enumerate(data_list):
    code_that_is_done_for_every_element
    if i != len(data_list) - 1:
        code_that_is_done_between_elements
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法?

注意:我不想使用hacks,例如使用reduce;)

python for-loop idioms fencepost

166
推荐指数
10
解决办法
15万
查看次数

检测项目是列表中的最后一项

我正在使用Python 3,并尝试检测项目是否是列表中的最后一项,但有时会重复.这是我的代码:

a = ['hello', 9, 3.14, 9]
for item in a:
    print(item, end='')
    if item != a[-1]:
        print(', ')
Run Code Online (Sandbox Code Playgroud)

我希望这个输出:

hello,
9,
3.14,
9
Run Code Online (Sandbox Code Playgroud)

但我得到这个输出:

hello, 
93.14, 
9
Run Code Online (Sandbox Code Playgroud)

我理解为什么我得到了我不想要的输出.我宁愿我仍然可以使用循环,但我可以解决它们.(我想用更复杂的代码来使用它)

python list python-3.x

10
推荐指数
4
解决办法
3万
查看次数

标签 统计

python ×2

fencepost ×1

for-loop ×1

idioms ×1

list ×1

python-3.x ×1