在 Python 3 中打印列表中不是 3 的倍数的数字

新手上路,请多包涵

给定一个数字列表,你必须在 python 3 中打印那些不是 3 的倍数的数字

输入格式:

第一行包含由空格分隔的数字列表。

输出格式:

将不是 3 的倍数的数字打印在一行中,用空格分隔。

例子:

输入:

1 2 3 4 5 6

输出:

1 2 4 5

解释:

这里的元素是 1,2,3,4,5,6,因为 3,6 是 3 的倍数,删除它们后列表剩下 1,2,4,5。

原文由 kumar mani krishna Pondugula 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 833
2 个回答

请不要只是复制你的 nptel 分配问题并寻求解决方案,首先尝试解决并找到错误在哪里,如何给出输入以及所需的输出是什么。我之前也被困在这个作业上。无论如何,这是应该可以正常工作的解决方案,如果它完成了工作,请不要忘记通过单击本文左侧的勾号来接受该解决方案。

 x = input()
num = list(map(int, x.split()))
l =[]
for i in num:
    if i%3 != 0:
        l.append(i)
print(*l, sep = " ")

原文由 Souvikavi 发布,翻译遵循 CC BY-SA 4.0 许可协议

有许多单线解决方案。怎么样:

 print(*(item for item in map(int, input().split()) if item % 3))

原文由 cdlane 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题