检测循环中的最后一次迭代

时间:2017-08-29 06:20:10

标签: python loops iteration

我有一个词,我想从一个单词中分割每个字符。我使用FOR IN循环来分割字符。在分割期间,我想检测第一个和最后一个字符。我使用变量count并将count初始化为0.如果count = 1则它是第一个字符。但同样如何在python

中检测FOR IN循环中的最后一个字符
select
      sum(case when month(date)=1 and YEAR(date) = '2017' then 1 else 0 end ) as 'Jan'
      sum(case when month(date)=2 and YEAR(date) = '2017' then 1 else 0 end ) as 'Feb'
      ......
      sum(case when month(date)=12 and YEAR(date) = '2017' then 1 else 0 end ) as 'Dec'
 from transaction
  where YEAR(date)='2017'
  GROUP BY YEAR(date) 

3 个答案:

答案 0 :(得分:5)

为什么不使用enumerate?这是为了这个目的。

for i, w in enumerate(word):
    if i in {0, len(word)-1}:
        ... # do something

您现在可以摆脱count变量。

答案 1 :(得分:1)

if count == len(word):
   #last 

答案 2 :(得分:1)

如果您只想获取第一个和最后一个字符,可以使用第一个和最后一个索引。

s = 'word'
s[0] >>> 'w'
s[-1] >>> 'd'