from
http://aichallenge.org/getting_started_with_python.php
- Code: Select all
import argparse
from math import sqrt, floor
def primes(n):
sieve = {x: True for x in range(2, n)}
for num in range(2, floor(sqrt(n))):
for multiple in range(num ** 2, n, num):
sieve[multiple] = False
return [x for x, is_prime in sieve.items() if is_prime]
def main():
parser = argparse.ArgumentParser(description='List prime numbers.')
parser.add_argument('--max', type=int, default=100,
help='highest prime number to generate')
args = parser.parse_args()
print(' '.join(map(str, primes(args.max + 1))))
if __name__ == '__main__':
main()
Error:
- Code: Select all
Traceback (most recent call last):
File "C:/Users/Paul/Desktop/playgame.py", line 20, in <module>
main()
File "C:/Users/Paul/Desktop/playgame.py", line 17, in main
print(' '.join(map(str, primes(args.max + 1))))
File "C:/Users/Paul/Desktop/playgame.py", line 6, in primes
for num in range(2, floor(sqrt(n))):
TypeError: range() integer end argument expected, got float.