Python Forum
5 mini programming projects for the python beginner - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: General (https://python-forum.io/forum-1.html)
+--- Forum: Code sharing (https://python-forum.io/forum-5.html)
+--- Thread: 5 mini programming projects for the python beginner (/thread-2873.html)



5 mini programming projects for the python beginner - kerzol81 - Apr-17-2017

Hi,

I've found a nice tutorial which I've already started.
I'd like to now how could my solutions be better, let's say more pytonic. I'm really into python, I'd like to have strong foundation, while learning it.
Please if you have time, and can provide clearer, easier, more pythonic code, please share it with me.

1. Dice Rolling Simulator version A:

import random 
import time

def castDie():

   input('Press any key to cast the die!')
   r = list(range(1, 7))
   print('Result: ' + str(random.choice(r)))


while True:
   time.sleep(1)
   castDie()
1. Dice Rolling Simulator version B:
import random

def question():
        input('Press enter to roll!')

def roll():
    n = [1, 2, 3, 4, 5, 6]
    print(random.choice(n))

question()
roll()
2. Guess The Number:
import random

n = random.randrange(1, 101)
print('I\'ve though a number between 1 and 100!')

while True:
    try:
        g = input('Guess!')
        g = int(g)
        if not 100 > g > 0:
            print('It\'s in between 0 and 100!')
    except ValueError:
        print('Enter an integer')
        continue

    if g == n:
        print('Congratulations!')
        break

    if g < n:
        print('Larger')

    if g > n:
        print('Smaller')



RE: 5 mini programming projects for the python beginner - sparkz_alot - Apr-17-2017

If you use double quotes, you will not need to escape the single quote.

print("I've thought of  a number between 1 and 100!")    # also corrected the grammar a bit :-)
you could also change this:

g = input('Guess!')
g = int(g)
to this:

g = int(input('Guess'))
Keep indentation uniform (preferred = 4 spaces), notice in your second example, the indentation is not the same. 
Try to use 'descriptive' variables, function and class names, etc. rather than single letters.  You will thank yourself in the future.


RE: 5 mini programming projects for the python beginner - kerzol81 - Apr-18-2017

Thanks!


RE: 5 mini programming projects for the python beginner - Skaperen - Apr-20-2017

and avoid using tabs for indentation ... for anything except tab-separated-value data files, but especially avoid tabs for indentation.

i'd like to see a graphical version of dice rolling simulators that allows setting the color of the die and the eyes, and the number of dies.  it would be plus to generate a video of them being rolled.


RE: 5 mini programming projects for the python beginner - VeenaReddy - Sep-26-2017

You can create a list with colors and number and use randrange function. Here is the sample program which I tried myself.
import random #import random function
input('Press any key to roll your Dice:')
color=['Red','Blue','Green','yellow','Pink','Black'] #declaring list of 6 colors of 6 sides.
op=random.randrange(1,7) #selecting random number from 1 to 6
op1=random.choice(color) #selecting random color from color list

print("Your Dice is",op1,"colour with number",op) #printing the output.