• python求素数: [p for p in range(2, maxNumber) if 0 not in [p%d for d in range(2, int(p**0.5)+1)]]


    题目:

    输入一个大于 2 的自然数,输出小于该数字的所有素数组成的集合。

    代码如下:

    maxNumber = int(input('请输入一个大于 2 的自然数:'))
    
    numbers = [p for p in range(2, maxNumber) if 0 not in [p%d for d in range(2, int(p**0.5)+1)]]
    
    print(numbers)

    对     numbers = [p for p in range(2, maxNumber) if 0 not in [p%d for d in range(2, int(p**0.5)+1)]]  的解释:

    将其展开写,这长句就等效于下面的代码

      

    number = []
    for p in range(2, maxNumber):
    z = True
    for d in range(2, int(p**0.5)+1):
    if p % d == 0:
    z = False
    break
    if z:
    number.append(p)

     相信这样拆开后,你就很容易明白它的意思啦

  • 相关阅读:
    关于 Vue
    HTTP 知识点
    JS 的一些原生属性
    JS知识点-2 通信类
    原生JS知识点
    CSS知识点
    HTML知识点
    关于在Ajax中使用pushstate
    JavaScript 中的 This
    观察者模式
  • 原文地址:https://www.cnblogs.com/mmimo/p/13772992.html
Copyright © 2020-2023  润新知