You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python for循环按输入顺序展示列表中各字符串的长度?

修正代码实现按输入顺序展示字符串长度

先给出可直接运行的修正代码:

# 将输入的字符串按逗号分割为列表,同时处理元素前后的空格
string_list = input("Please enter a list of strings separated by a comma.\ne.g. one,two,three,four,five\n").split(',')
# 遍历列表中的每个字符串
for s in string_list:
    cleaned_str = s.strip()  # 去除字符串前后可能存在的空格
    print(f"The length of the string {cleaned_str} is {len(cleaned_str)}.")

原代码的错误点说明:

  • 输入未转换为列表:input()返回的是单个字符串,必须用split(',')按逗号分割成字符串列表,否则无法逐个遍历元素
  • for循环语法错误:Python的for循环不支持for i = 0:这种写法,正确的遍历方式要么直接迭代列表元素(for s in string_list),要么通过索引遍历(for i in range(len(string_list)))
  • 长度计算语法错误:原代码中的len_stringList[]完全不符合Python语法,正确的长度计算方式是len(目标字符串),比如len(cleaned_str)
  • 提示文本与拼写错误:原提示里的"numbers"表述错误(实际需要输入字符串),且"seperated"拼写错误,正确应为"separated"
  • 未处理空格:若用户输入时在逗号后加了空格(比如one, two),直接分割会得到带空格的元素,用strip()可去除前后空格,保证结果准确

如果偏好使用索引遍历的写法,也可以这样实现:

string_list = input("Please enter a list of strings separated by a comma.\ne.g. one,two,three,four,five\n").split(',')
for i in range(len(string_list)):
    cleaned_str = string_list[i].strip()
    print(f"The length of the string {cleaned_str} is {len(cleaned_str)}.")

内容的提问来源于stack exchange,提问作者Diego

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 20:30:50