夏源键的作业一

代码


# 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)
    





结果

结果截图

解释

如果所写代码复杂,且没有良好的注释,那么请在这里补充解释。