String python字符串处理,当b[1]不可用时,直接放入word即可

String python字符串处理,当b[1]不可用时,直接放入word即可,string,python-3.x,split,word,identify,String,Python 3.x,Split,Word,Identify,我想判断字符串中的所有单词是否都是正确的英语单词。 我正在使用一个函数来检查它: is_word_english(word: str) 返回一个布尔值 该函数只能处理一个单词,因此我使用split()删除单词之间的空格。 以下是一个例子: a = ('Apple Banana') b = a.split() b ['Apple', 'Banana'] b[1] 'Banana' is_word_english(b[1]) False is_word_english('banana') Tru

我想判断字符串中的所有单词是否都是正确的英语单词。 我正在使用一个函数来检查它:

is_word_english(word: str)
返回一个布尔值

该函数只能处理一个单词,因此我使用
split()
删除单词之间的空格。 以下是一个例子:

a = ('Apple Banana')
b = a.split() 
b
['Apple', 'Banana']
b[1]
'Banana'
is_word_english(b[1])
False
is_word_english('banana')
True

如果
banana
banana
的输出不同,则意味着
是单词还是英语
区分大小写,您必须首先使用
str.lower

a = ('Apple Banana')
words = a.split()
lower_words = map(str.lower, words) # this part is missing in your code?
is_all_english = all(map(is_word_english, lower_words))
如果
是单词英语
只处理小写单词(似乎合理),为了方便,您可以将其包装起来:

def is_word_english_ci(word):
    return is_word_english(word.lower())

Try
是英语单词(b[1].lower())
。您的
is\u word\u english
函数可能区分大小写。正如@blhsing
is\u word\u english(b[1].lower())
这应该有效,因为您要做的是确保所有单词都是小写的。但是,对于某些需要大写字母的单词(例如英语、西班牙语或UN…)来说,python是区分大小写的。香蕉不等于香蕉。