我创建了一个空列表。从用户那里获取单词。给出大于5个单词的总数。
我创建了一个空列表。从用户那里获取单词。给出大于5个单词的总数。
有任何错误吗?
list1 = [] length = int(input('输入您想要的长度:')) for k in range(length): word = input('输入您的单词:') list1.append(word) print() print('原始列表:', list1) temp1 = 0 temp2 = 0 words = word.split(" ") for word in words: if len(word) >= 5: temp1 += 1 else: temp2 += 1 print(temp1) print(temp2)
本文主要讨论了一个问题,即如何创建一个空列表并从用户输入中获取单词,然后给出长度大于5的单词的总数。原始代码中存在一些问题,包括变量名不清晰、不必要的中间变量以及不正确的语法使用。下面是修改后的代码:
words = [] # 使用更具描述性的变量名('list1'不清晰,使用'words'更好) num_words = int(input('请输入您想要输入的单词数:')) # 获取用户输入的单词数量 for k in range(num_words): words.append(input('请输入您的单词:')) # 直接将输入的单词添加到列表中,不需要中间变量 print() print('原始列表:', words) result = 0 for word in words: # 不需要拆分单词,因为它已经是一个单词列表 if len(word) >= 5: result += 1 # 仅计算长度大于5的单词数量 print(result)
其他评论员已经提到,应避免重命名保留名称,如`len`,因为这会导致错误。此外,文章中还提到了如何检查字符串中是否包含特殊字符的问题,给出了一个链接供读者参考。