首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >打印所有具有偶数索引号的列表元素,错误语句

打印所有具有偶数索引号的列表元素,错误语句
EN

Stack Overflow用户
提问于 2021-10-27 22:06:40
回答 2查看 1.2K关注 0票数 0

对于我的任务,我认为我已经做对了,但是在Snakify上,它显示了以下错误语句: Traceback (最近一次调用):ValueError:带基数10:‘12,3,4,5’的无效文本int() --这个错误不会出现,在snakify上会出现,但是我需要这个错误,所以我可以检查我的解决方案。有什么建议吗?

任务是:一个数字列表,查找并打印所有具有偶数索引的列表元素。

代码语言:javascript
运行
复制
a = []
b = []

numbers = input()
for n in numbers.split():
    a.append(int(n))

    if int(n) % 2 == 0:
      b.append(a[int(n)])

print(b)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-10-27 22:28:57

如果参数包含非数字字符,例如空格‘’,int()只能转换数字并引发错误。您可以使用:

代码语言:javascript
运行
复制
nums = input().split()  # split() method splited string by spaces
a = []
for i in range(len(nums)):  # len() function return count of list elements
    if (i % 2) == 0:
        a.append(nums[i])

print(a)

此外,您还可以得到IndexError: list index out of range,请评论如果有趣的原因

票数 0
EN

Stack Overflow用户

发布于 2021-10-27 22:11:07

int(input())只在一个数字上工作。如果您想同时输入多个数字,则必须首先调用input(),将其拆分为不同的数字,然后在每个数字上调用int()

代码语言:javascript
运行
复制
numbers = input()
for n in numbers.split():
    a.append(int(n))

或者使用列表理解:

代码语言:javascript
运行
复制
numbers = input()
a = [int(n) for n in numbers.split()]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69746006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档