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

PythonパングラムチェックでのSet()の使用


この記事では、Python3.xで文字列が「パングラム」であるかどうかを判断する方法を学習します。またはそれ以前。パングラム文字列には、英語のアルファベットのリストにあるすべての文字が含まれています。下のイラストを見てみましょう-

Provided Input: str = 'This is the python blog on Tutorial point'
Desired Output: No
Provided Input : str='I want to contribute to a 'dxyzwuvghlkfmq' open source project'
Desired Output: Yes

定義上、完璧なパングラムには、「26の英語のアルファベット」のすべての文字が1回だけ含まれます。このチュートリアルには、「完璧なパングラム」の概念は含まれていません。

それでは、問題の説明と一連の制約を見てみましょう。

問題の説明 −文字列を指定して、パングラムかどうかを確認します。

制約

  1. 小文字と大文字は同じと見なされます。
  2. 上記のように、完璧なパングラムの場合は強制されません。
Input: First line of input contains the test string ‘str_input ’
Output: Print 'String is a Pangram' if conditions evaluate to be true,
otherwise it displays 'String is not a Pangram'.

関連するデータ構造

Set()&List()内包表記

前提条件

文字列と文字列の操作

この問題で実装しているアルゴリズムを簡単に見ていきましょう-

  1. 最初のタスクは、完全な入力文字列を小文字または大文字に変換することです。ここでは、 upper()を使用した大文字変換を使用しています データ型のメソッド「文字列」 Python3.xで。またはそれ以前。

  2. (str_input)の助けを借りて 関数を使用すると、入力文字列に存在するすべての個別の要素のリストを作成できます。

  3. 次に、新しいリストを作成します“ dist_list” 数字や特殊文字を含まない、すべての異なるアルファベットが含まれています。

  4. 次に、 dist_listの長さを確認します 26かどうか。条件が当てはまる場合、入力はパングラムです。それ以外の場合はそうではありません。

# user-defined function to check Pangram
def check_pangram(input):
   # convert input string into uppercase
   str_input = str_input.upper()

   # convert input string into Set()
   # a list of distinct elements will be formed.
   str_input = set(str_input)

# separate out alphabets from numbers and special characters
# ord(ch) returns the ASCII value of the character

dist_list = [ char for char in str_input if ord(char) in range(ord('a'), ord('z')+1)]
   if len(dist_list) == 26:
      return 'String is a Pangram'
   else:
      return 'String is not a Pangram'

# Executable main function
if __name__ == "__main__":
   str_input = input()
   print check_pangram(str_input)

結論

この記事では、文字列がPangramであるか、Python3.xを使用していないかを判断する方法を学びました。またはそれ以前。同じアルゴリズムを実装して、他のプログラミング言語でパングラム検出プログラムを作成できます。


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

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

  2. Pythonを使用して文字列をJSONに変換する方法は?

    json.loads()を使用してJSON文字列を辞書に変換します。このメソッドは、有効なjson文字列を受け入れ、すべての要素にアクセスできる辞書を返します。たとえば、 >>> import json >>> s = '{"success": "true", "status": 200, "message": "Hello"}' >>> d = json.loads(s) >>> print d["