python - 如何从长字符串中枚举特定字符以标识其在字符串中的索引。

标签 python

我写下了下面给出的代码来枚举字符串的位置及其出现次数:

line = "How  to enumerate a particular char from a long string to identify its index in a string."


for i, ch in enumerate(line):
        if ch=='a':
            v = 0
            print v++1,"-->",i+1,

这段代码的输出如下:

1 --> 15 1 --> 19 1 --> 22 1 --> 29 1 --> 34 1 --> 42 1 --> 81

我应该做什么改变才能得到这样的输出:

1 --> 15 2 --> 19 3 --> 22 4 --> 29 5 --> 34 6 --> 42 7 --> 81

它显示带有字符“a”的索引值及其数字,例如它出现了多少次。

谢谢

最佳答案

我认为这就是您正在寻找的:

for i, ch in enumerate(line):
        if ch == 'a':
            v += 1
            print("%d --> %d"%(v, i+1))

演示:

>>> counter = 0
>>> for i, ch in enumerate(line):
    if ch == 'a':
        counter += 1 #The right way to do it, number++ is useless in python,
                     #since this is not a post increment operator :)
        print "%d --> %d"%(counter, i+1) 


1 --> 15
2 --> 19
3 --> 22
4 --> 29
5 --> 34
6 --> 42
7 --> 81

每次匹配字符时,都会增加计数器,这样就可以得到结果!

关于python - 如何从长字符串中枚举特定字符以标识其在字符串中的索引。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20091484/

相关文章:

python - flask 形状加工

python - 机器学习: Getting error in Confusion Matrix

python - 如何让 pip 指向更新版本的 Python

python - 如何在 flask restful api 中响应一个 unicode 字符串?

python - 在Python中向基类添加实例变量

python - Keras 自定义二元交叉熵损失函数。获取 NaN 作为损失的输出

python - 设置复制警告和隐藏链接

python - 寻找逻辑回归的系数

python - 如何在贪吃蛇游戏中碰撞后让 Sprite 移动到不同的位置

python scikit学习,在LDA中获取每个主题的文档