:输入一段字符(由空格、字母和数字几种组成,保证开头不为空格),里面有若干个字符串,求这些字符串的长度和,并输出最长字符串内容,如果有多个输出最先出现的那个字符串。以stop作为最后输入的字符串。
时间: 2023-04-18 18:03:35 浏览: 99
输入一个字符串,统计出这个字符串的英文大写字母、小写字母、数字、空格以及其它字符的个数
5星 · 资源好评率100%
好的,我来回答这个问题。
首先,我们需要读入一段字符,并将其按空格分割成若干个字符串。可以使用split()函数来实现:
input_str = input() # 读入一段字符
str_list = input_str.split() # 按空格分割成若干个字符串
接下来,我们可以遍历这些字符串,求出它们的长度和,并记录下最长的字符串和它的位置。可以使用for循环和if语句来实现:
max_len = # 最长字符串的长度
max_str = '' # 最长字符串的内容
total_len = # 所有字符串的长度和
for i in range(len(str_list)):
cur_len = len(str_list[i]) # 当前字符串的长度
total_len += cur_len # 累加长度和
if cur_len > max_len: # 如果当前字符串比最长字符串更长
max_len = cur_len # 更新最长字符串的长度
max_str = str_list[i] # 更新最长字符串的内容
最后,我们需要输出最长字符串的内容。如果有多个最长字符串,输出最先出现的那个。可以使用break语句来实现:
for i in range(len(str_list)):
if str_list[i] == 'stop': # 如果读到了stop字符串
break # 跳出循环
if str_list[i] == max_str: # 如果当前字符串是最长字符串
print(max_str) # 输出最长字符串
break # 跳出循环
完整代码如下:
阅读全文