python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python判断输入为汉字/英文/数字

Python实用小技巧之判断输入是否为汉字/英文/数字

作者:机器学习Zero

这篇文章主要给大家介绍了关于Python实用小技巧之判断输入是否为汉字/英文/数字的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1. 判断输入是否为汉字

定义函数is_chinese,输入为字符串,该函数通过遍历字符串中的每个字符:

def is_chinese(input_string):
    for char in input_string:
        if not ('\u4e00' <= char <= '\u9fff'):
            return False
    return True

e.g.

input1 = "中国"input2 = "Hello, 世界"input3 = "1234"print(is_chinese(input1))  # Trueprint(is_chinese(input2))  # Falseprint(is_chinese(input3))  # False

输出
True
False
False

2. 判读是否为英文

方法一:

定义函数is_english,输入为字符串,该函数通过遍历字符串中的每个字符:

def is_english(word):
    for char in word:
        if not ('a' <= char <= 'z' or 'A' <= char <= 'Z'):
            return False
    return True

e.g.

input1 = "中国"
input2 = "HelloWord"
input3 = "1234"
print(is_english(input1))  # False
print(is_english(input2))  # True
print(is_english(input3))  # False

输出

False
True
False

方法二:

定义函数is_english_regex,输入为字符串,该函数通过使用正则表达式进行判断:

import re
def is_english_regex(word):
    pattern = re.compile(r'^[a-zA-Z]+$')
    return bool(pattern.match(word))

3. 判断是否为数字

(1)判断输入字符串是否为数字

定义函数is_number,输入为字符串,通过尝试将其转换为浮点数:

def is_number(input_string):
    try:
        float(input_string)
        return True
    except ValueError:
        return False

e.g.

input1 = "123"
input2 = "3.14"
input3 = "hello"

print(is_number(input1))  # True
print(is_number(input2))  # True
print(is_number(input3))  # False

输出

True
True
False

(2)判断输入字符串的每个字符是否都为数字

定义函数is_number,输入为字符串,通过直接调用isdigit方法,对其进行判断:

def is_number(input_string):
    if input_string.isdigit():
        return True
    return False

e.g.

input1 = "123"
input2 = "3.14"
input3 = "hello"

print(is_number(input1))  # True
print(is_number(input2))  # True
print(is_number(input3))  # False

输出
True
False
False

总结 

到此这篇关于Python实用小技巧之判断输入是否为汉字/英文/数字的文章就介绍到这了,更多相关Python判断输入为汉字/英文/数字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文