python随堂练

岁酱吖の 提交于 2020-03-11 18:03:33

最后一个单词

题目内容:计算字符串最后一个单词的长度,单词以空格隔开。
可以使用以下语句实现字符串s的输入:
输入格式:

s = str(inpput())

一行字符串,非空,长度小于5000。

输出格式:
整数N,最后一个单词的长度。

输入样例:
hello world
输出样例:
5
时间限制:500ms内存限制:32000kb

思路
python输入的字符串中每个单词的前后可能会存在多个空格。 本题主要 通过 从后往前找单词的方法,考虑以下几种情况
  1)如果找到非空格的字符,flag标记为1,用k(初始值为0)统计单词的长度
  2)如果找到的是空格字符,且flag 为 0,则continue跳出此次循环,继续查找
  3)如果找到的是空格字符,且flag为1,则break结束整个循环。此时k的数值就是最后一个单词的长度。

关于python中循环语句的了解,请点击链接,python循环语句的用法

解题代码

s = str(input())  #输入字符串
n = len(s)        #测量字符串长度
k = 0             #统计最后一个单词的长度
flag = 0          #用于标记是否是最后一个单词(不包含空格)
for i in range(n-1,0,-1):
    if(flag and s[i] == ' '):  #查找最后一个单词结束
        break
    elif(s[i] == ' '):
        continue   
    else:                      #统计最后一个单词的长度
        flag = 1
        k += 1    
print(k)

计算字符个数

题目内容:接受一个由字母和数字组成的字符串,和一个字符,然后输出输入的字符串中含有该字符的个数。不区分大小写。
可以使用以下语句实现字符串s的输入:

s = str(input())

s=str(input())输入格式:
输入一个由字母和数字组成的字符串,和一个字符,以空格隔开。

输出格式:
输出输入的字符串中含有该字符的个数。

输入样例:
a1234bcdef a

输出样例:
1
时间限制:500ms内存限制:32000kb

思路
   输入数据是一个字符串str,长度为n。可以看为它是由st1(长度至少为n-2),st2(长度为1)以及至少一个空格三个部分组成
       st1字符串: 一个字母和数字组成的字符串
       st2字符串: 一个字符
   通过for循环语句,对str1进行遍历(即 字符串str 从下标0开始,n-3结束,长度为n-2),并于st2(最后一个字符str[n-1])进行比较。由于不区分大小写,因此要与最后一个字符的大小写比较 。 即s[n-1].upper() or s[i] == s[n-1].lower()任何一个成立即可,并统计个数。

解题代码

s = str(input())
n = len(s)
k = 0
for i in range(n-2):
    if(s[i] == s[n-1].upper() or s[i] == s[n-1].lower()):
        k += 1
print(k)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!