# replace with your code here
with open('作业一素材.txt','r',encoding = 'utf-8') as file:
myString = file.read()
'''
从后往前循环,找到第2个换行符,将此index保存在变量i中
如此,则把页脚部分去掉
'''
cnt = 0
for i in range(len(myString)-1,-1,-1):
if myString[i] == '\n':
cnt = cnt + 1
if cnt == 2:
break
'''
去掉页脚部分,得到新字符串。对字符串进split行函数运算
循环操作得到该文本最后一个单词的长度
'''
length = 0
myString = myString[0:i]
lastWord = myString.split()[-1]
for j in lastWord:
if j.isalpha():
length += 1
print(length)
#附加题
with open('作业一附加选做题素材.txt','r',encoding = 'utf-8') as file:
myString = file.read()
#和第一步同理,把页脚部分去掉
cnt = 0
for i in range(len(myString)-1,-1,-1):
if myString[i] == '\n':
cnt = cnt + 1
if cnt == 2:
break
'''
循环下去,先遭遇第一个句号,继续,
直到碰到第二个句号,此时最后一句话已读完,
过程中如碰到换行符则跳过
'''
length = 1 #一句话至少有一个句号,所以初始长度为1
cnt = 0
for j in range(i-1,-1,-1):
if myString[j] == '。':
cnt += 1
if cnt == 2:
break
elif myString[j] == '\n':
continue
else:
length += 1
print(length)
如果所写代码复杂,且没有良好的注释,那么请在这里补充解释。