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

Pythonでリスト内包表記とord()をリストして、アルファベット以外のすべての文字を削除します


この記事では、Python 3.xのリスト内包表記とord()関数の概念を使用して、アルファベット以外のすべての文字を削除できるプログラムについて学習します。またはそれ以前。

アルゴリズム

1.We Traverse the given string to check the charater.
2.Selection of characters is done which lie in the range of either [a-z] or [A-Z].
3.Using the join function we print all the characters which pass the test together.

def remchar(input):

# checking uppercase and lowercase characters
final = [ch for ch in input if
(ord(ch) in range(ord('a'),ord('z')+1,1)) or (ord(ch) in
range(ord('A'),ord('Z')+1,1))]

return ''.join(final)

# Driver program
if __name__ == "__main__":
   input = "Tutorials@point786._/?"
   print (remchar(input))

出力

Tutorialspoint

ord()関数は、引数として文字を受け入れ、対応するASCII値を返します。これにより、簡単かつ迅速に比較できます。

ここでは、リスト内包表記も実装しました。これにより、リストの必要なすべての要素をフィルタリングし、結合関数を使用してそれらをまとめて、目的の出力を取得できます。

結論

この記事では、Pythonでリスト内包表記とord()関数を使用して、アルファベット以外のすべての文字を削除する方法について学びました。


  1. Pythonで文字列内の文字のリストを削除するにはどうすればよいですか?

    文字列クラスには、文字列内のサブ文字列を置き換えるために使用できるメソッドreplaceがあります。このメソッドを使用して、削除する文字を空の文字列に置き換えることができます。例: >>> "Hello people".replace("e", "") "Hllo popl" 1行の文字列から複数の文字を削除する場合は、正規表現を使用することをお勧めします。複数の文字は「|」で区切ることができますそして、re.sub(chars_to_replace、string_to_replace_with

  2. Pythonで文字列からすべての特殊文字、句読点、スペースを削除するにはどうすればよいですか?

    文字列からすべての特殊文字、句読点、スペースを削除するには、文字列を繰り返し処理し、英数字以外のすべての文字を除外します。例: >>> string = "Hello $#! People   Whitespace 7331" >>> ''.join(e for e in string if e.isalnum()) 'HelloPeopleWhitespace7331' 正規表現を使用して、英数字以外の文字を削除することもできます。 re.sub(regex、string_to_replace