import requests
import re
text = requests.get('http://www.yyschools.com/courses/FinancialData/Presentation/chapter02_WarmUp_Python/%E4%BD%9C%E4%B8%9A%E4%B8%80%E7%B4%A0%E6%9D%90.txt')
text.encoding = 'utf-8'
text = text.text
pat = '([a-zA-Z]*?)\W'
limit = re.search('顺丰控股', text).start()
text = text[:limit]
k = re.compile(pat).findall(text)
k = [i for i in k if i]
print(f'最后一个单词为{k[-1]},其长度为', len(k[-1]))
附加题
import requests
import re
text = requests.get('http://www.yyschools.com/courses/FinancialData/Presentation/chapter02_WarmUp_Python/%E4%BD%9C%E4%B8%9A%E4%B8%80%E7%B4%A0%E6%9D%90.txt')
text.encoding = 'utf-8'
text = text.text
pat = '([a-zA-Z]*?)\W'
limit = re.search('顺丰控股', text).start()
text = text[:limit]
k = re.compile(pat).findall(text)
k = [i for i in k if i]
print(f'最后一个单词为{k[-1]},其长度为', len(k[-1]))
引用get得到地址下的pdf文件,发现其格式有问题,改成utf-8格式,再用文本形式读取 进行正则表达式匹配,匹配大小写字母和空格字符,即为全文匹配,题目要求是顺丰控股前的内容,所以 找到顺丰控股的下标,读取顺丰控股前的所有内容,再用compile进行分割匹配,再使用for循环语句,因为在布尔类型中空格表示的是否,所以 for循环将所有非空格字符储存在新的列表里,即得到类似split函数分割的内容。附加题也是同样思路,只是匹配要求变成了句子