1

文字列に外国語の文字「å、ä、ö」が含まれているかどうかを検出できるようにする必要があるPython 3.2でプログラムを作成しています。次のコードを書きました。

# This Python file uses the following encoding: utf-8

name = input('Give your name: ')

if ('å' in name) or ('ä' in name) or ('ö' in name):
   print('Foreign characters found')

ただし、たとえば「Åke」と入力すると、プログラムはまだ印刷コマンドを実行しません。これが事実である理由のアイデアはありますか?または、指定された文字列内の文字「å、ä、ö」を検出する方法について、他にアイデアはありますか?

4

1 に答える 1

1

これらの 3 つの文字をチェックしているだけです。これは質問の答えにはなりませんが、外国語の文字をチェックするには、次の方法が適している可能性があります。

try:
    name.encode('ascii')
except UnicodeError:
    print('Foreign characters found')

注: Python 2.7 でテストされていますが、3.2 でも動作するはずです。

于 2012-07-25T15:21:58.257 に答える