Python 3.2中的外来字符

时间:2012-07-25 15:00:10

标签: python string python-3.x

我正在用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”,程序仍然不执行print-command。为什么会出现这种情况?或者您对如何在给定字符串中检测字符“å,ä,ö”有任何其他想法?

1 个答案:

答案 0 :(得分:1)

您现在只是检查这三个字符,虽然这不能回答您的问题,但这可能是检查外来字符的更好方法:

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

注意:在python 2.7中测试过,但我认为它也应该在3.2中工作。