python 判断字符串中是否含有英文

如题所述

使用isalpha()方法来进行判断。Python isalpha() 方法检测字符串是否只由字母组成。如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。

isalpha()方法要检测的字符。它可以是一个有效的字符(被转换为 int 类型),也可以是 EOF(表示无效的字符)。


扩展资料

通常认为只有"abc...xyzABC...XYZ"才是字母,其实这是不对的。字母并不是固定的,不同的语言文化可能会包含不同的字母,例如在“简体中文”环境中,西里尔文БГЁ、希腊文ΣΩΔΨΦ(数学物理公式中常用希腊字母)等都将成为字母。

可以通过 setlocale() 函数改变程序的地域设置,让程序使用不同的字符集,从而支持不同的语言文化。一个字母要么是小写字母,要么是大写字母;并且一个小写字母必定对应一个大写字母,反之亦然。这种说法虽然适用于默认的地域设置(默认为"C"),但是并不一定适用于其它的地域设置。

参考资料来源:百度百科-isalpha

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-20
#-*- coding:utf-8 -*-
import re

def check(str):
  my_re = re.compile(r'[A-Za-z]',re.S)
  res = re.findall(my_re,str)
  if len(res):
      print u'含有英文字符'
  else:
      print u'不含有英文字符'
if __name__ == '__main__':
  str = '你好123hello'
  check(str)
  str1 = '你好123'
  check(str1)

第一种方法使用热,其打印结果如下:

第二种方法,使用isalpha()。是字母的时候返回True,不是字母的时候返回False,

#-*- coding:utf-8 -*-
def check(str):
    str_1 = list(str)
    for i in str_1:
        if i.isalpha():
            print '*'*15
            print u'含有英文字符'
            break
if __name__ == '__main__':
    str = '你好123'
    check(str)
    #*********************************
    str1 = '你好123hello world'
    check(str1)

其打印结果如下:含有字母时,返回打印值并跳出循环,不含有字母时,不进行操作!

第2个回答  2016-10-14
python 字符串有个方法是判断是否字符串全是英文字母,isalpha()是的话返回true,否则false
要判断子串是否有英文字母可以使用any( ch.isalpha() for ch in strings)
如果你要判断是否含有英文单词,那的借助第三方扩展了本回答被提问者采纳
相似回答