Python
 Computer >> コンピューター >  >> プログラミング >> Python

文字列をチェックするプログラムは、Pythonで指定された単語のリストに分割することも、分割しないこともできます


単語リストとスペースのない別の文字列があるとします。単語のリストを使用して文字列を分類できるかどうかを確認する必要があります。

したがって、入力がwords =["love"、 "python"、 "we"、 "programming"、 "language"] s ="welovepythonprogramming"の場合、出力はTrueになります

これを解決するには、次の手順に従います-

  • words:=すべての一意の単語の新しいセット
  • 関数rec()を定義します。これには時間がかかります
  • iがsのサイズと同じ場合、
    • Trueを返す
  • acc:=空白の文字列
  • iからsのサイズまでの範囲のjについては、
    • acc:=acc concatenate s [j]
    • accが単語の場合、
      • rec(j + 1)がTrueの場合、
        • Trueを返す
  • Falseを返す
  • メインメソッドからrec(0)を呼び出し、結果を返します

理解を深めるために、次の実装を見てみましょう-

class Solution:
   def solve(self, words, s):
      words = set(words)

      def rec(i=0):
         if i == len(s):
            return True
         acc = ""
         for j in range(i, len(s)):
            acc += s[j]
            if acc in words:
               if rec(j + 1):
                  return True
         return False

      return rec()
     
ob = Solution()
words = ["love", "python", "we", "programming", "language"]
s = "welovepythonprogramming"
print(ob.solve(words, s))

入力

["love", "python", "we", "programming", "language"], "welovepythonprogramming"

出力

True

  1. 指定された文字列がキーワードであるかどうかを確認するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −数値が与えられているので、その数値が2の累乗であるかどうかを確認する必要があります。 キーワードは、特定の用途で任意の言語によって予約されている特別な単語であり、識別子として使用することはできません。 指定された文字列がキーワードであるかどうかを確認するために、以下で説明するようにキーワードモジュールを使用しました。 例 # keyword module import keyword # Function def isKeyword(word) :    # list of all

  2. 指定された文字列がパングラムであるかどうかを確認するPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 文字列入力が与えられた場合、その文字列がパングラムであるかどうかを確認するPythonプログラムを生成する必要があります。 パングラムは、英語のアルファベットコレクションのすべての文字を含む文/一連の単語です。 では、問題を解決する方法を見てみましょう 入力文字列に存在する各文字が、手動で宣言するアルファベットセットに属しているかどうかをチェックするループを使用します。 上記のアプローチの実装は、-によって与えられます。 例 import string def ispangram