python - 使用嵌套循环在列表中查找素数
问题描述
编程新手。我有下面的一段代码,我一直在试图弄清楚如何打印给定列表中的素数列表(赔率)。请帮助前进。
divisible = 0
dividers = []
odds = [1, 3, 5, 7, 9, 11, 13, 15, 17] #list to check for primes
for divider in range(2, dividers):
for i in odds:
if i % divider == 0:
dividers.append(divider)
divisible += 1
divisible == 0:
print(odds)
解决方案
for divider in range(2, dividers):
此表达式无效。的类型dividers
不是。你想用这些代码做什么?list
int
如果您试图找出给定列表中的哪些数字是素数,您应该如下更改您的代码:
is_prime = lambda x: False if x < 2 else all(x % i != 0 for i in range(2, x))
random_numbers = [11, 18, 19, 22, 6, 3, 8]
prime_numbers = [i for i in random_numbers if is_prime(i)]
print(prime_numbers)
我们应该得到如下输出:
[11, 19, 3]
推荐阅读
- web-applications - 在实际提交之前批准 API 提交请求?
- python - 带有 ID 的 POST 和 GET 嵌套对象在 ModelSerializer 中不能同时在 django 中工作
- javascript - 如何在两个循环中运行的操作中创建唯一代码?
- angular - Angular 11 中的 CRUD:如何使用删除和更新按钮解决这两个问题
- tensorflow - 如何在 TensorFlow 中将 2d 张量转换为 3d 张量
- docker - 在 Amazon EC2 上运行的 docker swarm 上的容器之间的连接被拒绝
- python - 如何添加一个while true循环来计算一个单词在文本中被说了多少次?
- bootstrap-modal - Bootstrap 4/5 中的多行模式标题
- elasticsearch - ElasticSearch 中的 should 和 Filter 组合
- java - 在Java中的另一个方法上创建一个方法