def check_string_type(input_str):
# 判断字符串中是否包含中文, \u4e00 和 \u9fff 是 Unicode 编码范围,它表示中文字符的范围。
has_chinese = any('\u4e00' <= char <= '\u9fff' for char in input_str)
# 判断字符串中是否包含英文
has_english = any(char.encode().isalpha() for char in input_str)
# 根据中文和英文的情况,返回相应的值
if has_chinese and has_english:
return 3 # 如果 has_chinese 和 has_english 都为 True,即同时有中文和英文,返回3
elif has_chinese:
return 1 # 如果只有 has_chinese 为 True,即只有中文,返回 1
elif has_english:
return 2 # 如果只有 has_english 为 True,即只有英文,返回 2
# 示例用法
string1 = "hello,world"
string2 = "你好世界!"
string3 = "hello 你好"
print(check_string_type(string1)) # 输出: 2
print(check_string_type(string2)) # 输出: 1
print(check_string_type(string3)) # 输出: 3
判断字符串的语种,如果一个字符串中只含有中文返回1,只含有英文返回2,含有中文和英文返回3
最新推荐文章于 2024-07-04 12:19:40 发布
该代码定义了一个函数check_string_type,用于检查输入字符串是否包含中文和/或英文。通过遍历字符串并判断每个字符的Unicode编码范围来识别中文,使用encode().isalpha()检查英文。根据有无中文和英文,函数返回3(两者都有),1(只有中文)或2(只有英文)。示例展示了不同情况下的输出结果。
摘要由CSDN通过智能技术生成