Welcome everyone to my blog. I could not write a new blog post for the last year because of my heavy work schedule. So I thought to write an article on a recent project done by me. Let's get started.
Imagine that you want to flip a coin. Perhaps you don't need a complex python script to flip and find a result but what if you're going to flip a coin 2 million times and check the results. Then you have to invite Python to do all the hard work for you.
If you are not interested to dive deep, just go ahead and check my project on Github. And also don't forget to follow my profile for the latest fun projects.
and if you are a Python expert please feel free to fork. 🍴🍴
Link: https://github.com/chamodhk/coin-flipper
Import the libraries you want!
If you aren't using a GUI all you have to import is the random module. If you are an expert you don't have to import it too because you can write a function to get the random part done.
List The Results
Before starting, we have to create a list that contains the possible results i.e. Heads and Tails. And also
we have to create a list to record our results.
sides = ['Heads','Tails']
results = []
Get a random choice
Set round count
At last, we have to get the number of rounds to flip the coin.
count = int(input("How many times you want to flip the coin?: "))
Code the main loop.
To flip the coin we have to create a loop that runs for the number we provided and writes results to the results list.
for flip in range(count)
# Logic goes here
Get a random choice
To flip the coin we use the random.choice() which returns a random choice from the side list.
to write the result to the result list we use results.append().
for flip in range(count):
flip = random.choice(sides)
results.append(flip)
Calculate the head-tail percentages.
This is the most interesting part of the article. Can you guess the final result? Each percentage is very close to 50% and this proves the theory of large numbers.
To calculate the percentages write the following simple code.
print('\nHeads'+str(heads)+'%\n')
print('\nHeads'+str(heads)+'%\n')
Full Code.
import random
sides = ['Heads','Tails']
results = []
count = int(input("How many times you want to flip the coin?: "))
for flip in range(count):
flip = random.choice(sides)
results.append(flip)
heads = results.count('Heads')/len(results)*100
tails = results.count('Tails')/len(results)*100
print('\nHeads '+str(heads)+'%\n')
print('\nHeads '+str(tails)+'%\n')
Hope you learned something new. If yes, don't forget to follow and share my blog.
Comments
Post a Comment