什么等同于++递增运算符? [英] What is the equivalent of the ++ increment operator?

查看:40
本文介绍了什么等同于++递增运算符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在Python中找到正确的方式来完成以下任务(这不是按书面方式工作的):

myList = ["a", "b", "c"]
myCounter = 5

for item in myList:
  print("""Really long text 
in which I need to put the next iteration of myCounter (""", myCounter++, """) followed 
by a lot more text with many line breaks
followed by the next iteration of myCounter (""", myCounter++, """) followed by even
more long text until finally we get to the next
iteration of the for loop.""", sep='')

不幸的是(至少对我而言),Python中不存在++运算符或语句作为将变量递增1的方式,而是使用

myCounter += 1

当我想要打印变量并同时递增它时,

似乎也不起作用。我希望它第一次通过for循环打印5和6,然后在下一次打印7和8,最后一次打印9和10。在Python3中应如何完成此操作?

推荐答案

我可能会考虑使用itertools.count

import itertools

myCounter = itertools.count(5)
for item in myList:
    print("la la la.", next(myCounter), "foo foo foo", next(myCounter))

如果您希望避免导入,也可以很容易地编写自己的生成器来做这类事情:

def counter(val=0):
    while True:
        yield val
        val += 1

这篇关于什么等同于++递增运算符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆