我正在尝试制作一个简单的脚本,该脚本为以大写字母开头并返回它的最后一个单词搜索指定的.txt文件。如果没有以大写字母开头的单词,它将返回一个空字符串。
到目前为止,这是我尝试过的:
def find_last_capitalised(file_name):
with open(file_name) as wordfile:
text_str = wordfile.read()
word_list = text_str.split()
upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
for word in word_list:
if word.rfind(upper):
return word
else:
return " "
但这不起作用。
我也尝试过这个:
with open(file_name) as wordfile:
text_str = wordfile.read()
word_list = text_str.split()
for word in word_list:
if word_list[-1].isupper():
return word_list[-1]
else:
return " "
有什么帮助吗?
首先,您的算法将返回第一个首字母大写的单词,而不是最后一个,因此逻辑上需要稍作更改。还提供了检查单词是否大写的最简单方法:
def find_last_capitalised(file_name):
with open(file_name) as wordfile:
text_str = wordfile.read()
word_list = text_str.split()
last_cap_word = " "
for word in word_list:
if word[0].isupper():
last_cap_word = word
return last_cap_word
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句