问题描述
实现filescounter,它采用各种字符串,并返回该字符串中大写单词的数量,包括最后一个字符和第一个字符。
def filescounter(s):
sr=0
for words in text:
#...
return sr
我一直在坚持下去。
解决方法
在空白处分割文本,然后遍历以下单词:
def countCapitalized(text):
count = 0
for word in text.split():
if word.isupper():
count += 1
return count
如果用大写字母表示只需要首字母大写,则可以将word.isupper()
替换为word[0].isupper()
。
使用此:
def count_upper_words(text):
return sum(1 for word in text.split() if word.isupper())
说明:
- split()用空格或换行符将文本切成单词
- 所谓的list comprehension比显式for循环的运行速度更快,并且看起来更好