Skip to main content
Tweeted twitter.com/StackCodeReview/status/1437747972339556359
added 7 characters in body; edited title
Source Link
mdfst13
  • 21.7k
  • 6
  • 33
  • 68

I coded a My prime number program generation program in Python

So iI did my own take (I wrote my own algorithm) for generating prime numbers from 1 to 1000.

  • Is this code easy to read?
  • Is this optimal (I don't think so)?
  • What should I do for improving my code?
OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

OUTPUT

2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149,
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229,
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313,
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409,
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499,
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601,
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691,
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809,
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907,
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997

I coded a prime number program generation in Python

So i did my own take (I wrote my own algorithm) for generating prime numbers from 1 to 1000.

  • Is this code easy to read?
  • Is this optimal (I don't think so)?
  • What should I do for improving my code
OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

My prime number generation program in Python

So I did my own take (I wrote my own algorithm) for generating prime numbers from 1 to 1000.

  • Is this code easy to read?
  • Is this optimal (I don't think so)?
  • What should I do for improving my code?

OUTPUT

2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149,
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229,
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313,
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409,
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499,
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601,
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691,
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809,
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907,
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997

So i did my own take (I wrote my own algorithm) for generating prime numbers from 1 to 1000.

lst = [y for y in range(1000)]
for i in range(0,len(lst)):     #i = 1 and i is traversal
    print("iterate - " + str(i))
    for j in range(i,0,-1):     #divisor range
        print(j)
        if j != 1 and j < lst[i] and lst[i]%jlst[i] % j == 0:
            if j in lst:
                lst[i] = 0
                break

for k in range(len(lst)):
    if 0 in lst:
        lst.remove(0)
        if 1 in lst:
            lst.remove(1)
        
        
        
print(lst)
 
        

So i did my own take(i had written my own algorithm) in generating prime numbers from 1 to 1000(range) and i gave the code in the above. My concern isconcerns are

a.)Is this code okay?. b.)Is this optimal(i don't think so)? c.)Is this good coding?. d.)What should i do for improving the code.

  • Is this code easy to read?
  • Is this optimal (I don't think so)?
  • What should I do for improving my code
OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67,  
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149,  
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229,  
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313,  
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409,  
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499,  
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601,  
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691,  
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809,  
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907,  
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

lst = [y for y in range(1000)]
for i in range(0,len(lst)):     #i = 1 and i is traversal
    print("iterate - " + str(i))
    for j in range(i,0,-1):     #divisor range
        print(j)
        if j != 1 and j < lst[i] and lst[i]%j == 0:
            if j in lst:
                lst[i] = 0
                break

for k in range(len(lst)):
    if 0 in lst:
        lst.remove(0)
        if 1 in lst:
            lst.remove(1)
        
        
        
print(lst)
 
        

So i did my own take(i had written my own algorithm) in generating prime numbers from 1 to 1000(range) and i gave the code in the above. My concern is

a.)Is this code okay?. b.)Is this optimal(i don't think so)? c.)Is this good coding?. d.)What should i do for improving the code.

OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

So i did my own take (I wrote my own algorithm) for generating prime numbers from 1 to 1000.

lst = [y for y in range(1000)]
for i in range(0,len(lst)):     #i = 1 and i is traversal
    print("iterate - " + str(i))
    for j in range(i,0,-1):     #divisor range
        print(j)
        if j != 1 and j < lst[i] and lst[i] % j == 0:
            if j in lst:
                lst[i] = 0
                break

for k in range(len(lst)):
    if 0 in lst:
        lst.remove(0)
        if 1 in lst:
            lst.remove(1)
        
        
        
print(lst)

My concerns are

  • Is this code easy to read?
  • Is this optimal (I don't think so)?
  • What should I do for improving my code
OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 
71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149,  
151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229,  
233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313,  
317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409,  
419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499,  
503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601,  
607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691,  
701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809,  
811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907,  
911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]

Source Link
Aryan
  • 51
  • 4

I coded a prime number program generation in Python

lst = [y for y in range(1000)]
for i in range(0,len(lst)):     #i = 1 and i is traversal
    print("iterate - " + str(i))
    for j in range(i,0,-1):     #divisor range
        print(j)
        if j != 1 and j < lst[i] and lst[i]%j == 0:
            if j in lst:
                lst[i] = 0
                break

for k in range(len(lst)):
    if 0 in lst:
        lst.remove(0)
        if 1 in lst:
            lst.remove(1)
        
        
        
print(lst)

        

So i did my own take(i had written my own algorithm) in generating prime numbers from 1 to 1000(range) and i gave the code in the above. My concern is

a.)Is this code okay?. b.)Is this optimal(i don't think so)? c.)Is this good coding?. d.)What should i do for improving the code.

OUTPUT

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997]