Python-文字列内の部分文字列を検索します(コードが機能しません)

Metal.days

私はコードを書いています。文字列(i)と部分文字列(sb)を入力すると、コードは部分文字列が文字列に重複して出現する回数をカウントする必要があります。

このコードは、文字列「AAAA」を入力して「A」を検索すると機能しますが((正しい量を返す、4)、「ADAM」を入力して「A」を検索すると、無限ループに陥ります。

私の一生の間、私はこの問題を解決することはできません。

i = input("Enter a string:")
sb = input("Enter a substring:")

count = 0
x = 0    #index from the string found
idxTotal = len(i)  

while True:

    i.find(sb,x)

    if x != idxTotal:
        count += 1
        x = i.find(sb,x)+1

    else:
        break

print(count)
ウィレムヴァンオンセム

あなたは物事を複雑にしすぎると思います。基本的whileに、文字列の終わりに到達していないことをループでチェックする必要があります。さらに、オフセット値をインクリメントすることにより、進行状況保証する必要があります。

したがって、次のように書くことができます。

x = i.find(sb)
n = 0
while x >= 0:
    n += 1
    x = i.find(sb, x+1)
# here n is the number of occurrences
print(n)

したがって、最初にaを実行しi.find(sb)て最初のオカレンスを見つけ、n(カウント)をゼロに設定します。毎回x >= 0、次のオカレンスを見つけたので、インクリメントnしてから次のオカレンスを探します。

.find(..)が返されるまでそれを続けます-1その場合、whileループは停止し、n要素の数が含まれます。

例えば:

>>> i = 'ADAM'
>>> sb = 'A'
>>> x = i.find(sb)
>>> n = 0
>>> while x >= 0:
...     n += 1
...     x = i.find(sb, x+1)
...
>>> print(n)
2

これは、次のようなオーバーラップカウントも実行します。

>>> i = 'AAADAAAAAM'
>>> sb = 'AAA'
>>> x = i.find(sb)
>>> n = 0
>>> while x >= 0:
...     n += 1
...     x = i.find(sb, x+1)
...
>>> print(n)
4 

したがって、ここで'AAADAAAAAM'は4つの一致があります'AAA'

  AAADAAAAAM
1 AAA
2     AAA
3      AAA
4       AAA

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Pythonは、部分文字列を使用して文字列内の文字列を検索します

分類Dev

Python 3は、部分文字列が続かない文字列を検索します

分類Dev

Python:文字列のリストから部分文字列を検索します

分類Dev

Python:文字列内の部分文字列を検索し、部分文字列のインデックスを返します

分類Dev

Python:文字列内の部分文字列を検索しますが、インデックス位置の代わりにTrueまたはFalseを返します

分類Dev

Pythonを使用して文字列内の部分文字列を検索する

分類Dev

Pythonの部分文字列は整数の数値では機能しません

分類Dev

Pythonで複数の部分文字列のリストを検索しますか?

分類Dev

部分文字列に基づいてログファイル内の特定の行を検索します-Python

分類Dev

部分文字列に基づいてログファイル内の特定の行を検索します-Python

分類Dev

Python DifflibのSequenceMatcherは、最長の共通部分文字列を検出しません

分類Dev

文字列と部分文字列の長さが等しい場合、Pythonでの文字列のfind()は機能しませんか?

分類Dev

Pythonで特定の文字で開始および終了する文字列内の部分文字列のインデックスを検索して出力します

分類Dev

Pythonで300万レコードを介して部分文字列を検索

分類Dev

文字列pythonで最長の一意の部分文字列を検索します

分類Dev

Pythonを使用して、複数の文字列内の部分文字列のインスタンスを検索してカウントします

分類Dev

Python Pandas:部分文字列を検索してテーブルを検索する

分類Dev

Pythonで部分文字列の後の行の終わりまでのテキストを検索します

分類Dev

str.containsを使用して、Pythonでパンダを含む2つの部分文字列を検索します

分類Dev

Python3のbeautifulsoupで部分文字列を使用してhtmlタグを検索します

分類Dev

Pythonでアルファベット順の最大の部分文字列を検索すると、文字列の最後の文字を取得できません

分類Dev

文字列をエンコードするUDFはpsqlとPerlで機能しますが、Pythonでは機能しません

分類Dev

Python文字列内の文字を検索し、後続の文字を変更します

分類Dev

Pythonの正規表現検索は、colon(:)を含む文字列では機能しません

分類Dev

Python-文字列のリストで部分文字列のリストを検索し、別の列から最大値を返します

分類Dev

Pythonで部分文字列の文字の順列を検索する

分類Dev

Python:文字列変数はJSONで認識されませんが、ハードコードされた文字列は機能します(Instagram API)

分類Dev

Python正規表現のサーバー制約を満たす二重引用符で囲まれたすべての部分文字列を検索します

分類Dev

Pythonの別のリストの部分文字列がリストに含まれている場合は、リストの最初の出現を検索します

Related 関連記事

  1. 1

    Pythonは、部分文字列を使用して文字列内の文字列を検索します

  2. 2

    Python 3は、部分文字列が続かない文字列を検索します

  3. 3

    Python:文字列のリストから部分文字列を検索します

  4. 4

    Python:文字列内の部分文字列を検索し、部分文字列のインデックスを返します

  5. 5

    Python:文字列内の部分文字列を検索しますが、インデックス位置の代わりにTrueまたはFalseを返します

  6. 6

    Pythonを使用して文字列内の部分文字列を検索する

  7. 7

    Pythonの部分文字列は整数の数値では機能しません

  8. 8

    Pythonで複数の部分文字列のリストを検索しますか?

  9. 9

    部分文字列に基づいてログファイル内の特定の行を検索します-Python

  10. 10

    部分文字列に基づいてログファイル内の特定の行を検索します-Python

  11. 11

    Python DifflibのSequenceMatcherは、最長の共通部分文字列を検出しません

  12. 12

    文字列と部分文字列の長さが等しい場合、Pythonでの文字列のfind()は機能しませんか?

  13. 13

    Pythonで特定の文字で開始および終了する文字列内の部分文字列のインデックスを検索して出力します

  14. 14

    Pythonで300万レコードを介して部分文字列を検索

  15. 15

    文字列pythonで最長の一意の部分文字列を検索します

  16. 16

    Pythonを使用して、複数の文字列内の部分文字列のインスタンスを検索してカウントします

  17. 17

    Python Pandas:部分文字列を検索してテーブルを検索する

  18. 18

    Pythonで部分文字列の後の行の終わりまでのテキストを検索します

  19. 19

    str.containsを使用して、Pythonでパンダを含む2つの部分文字列を検索します

  20. 20

    Python3のbeautifulsoupで部分文字列を使用してhtmlタグを検索します

  21. 21

    Pythonでアルファベット順の最大の部分文字列を検索すると、文字列の最後の文字を取得できません

  22. 22

    文字列をエンコードするUDFはpsqlとPerlで機能しますが、Pythonでは機能しません

  23. 23

    Python文字列内の文字を検索し、後続の文字を変更します

  24. 24

    Pythonの正規表現検索は、colon(:)を含む文字列では機能しません

  25. 25

    Python-文字列のリストで部分文字列のリストを検索し、別の列から最大値を返します

  26. 26

    Pythonで部分文字列の文字の順列を検索する

  27. 27

    Python:文字列変数はJSONで認識されませんが、ハードコードされた文字列は機能します(Instagram API)

  28. 28

    Python正規表現のサーバー制約を満たす二重引用符で囲まれたすべての部分文字列を検索します

  29. 29

    Pythonの別のリストの部分文字列がリストに含まれている場合は、リストの最初の出現を検索します

ホットタグ

アーカイブ