Skip to main content

365 DAYS OF CODE - DAY 17

I am starting today with a new attitude, like I stated yesterday. And it kind of feels different and exciting.

I am excited to face the challenges ahead. Hopefully it lasts (my excitement not the challenges to be precise). But is there a way to rid ourselves of challenges?? I do not know. What I know is that it gets easier to solve them. Maybe. Hopefully.

Without further ado, I wish Microsoft word gives word/sentence suggestions by the way (totally unrelated to today’s agenda).

Today, continuing day 12 of the prestigious 100 days of python course on Udemy, I learned how to modify global variables in a local scope (i.e., a function) by calling it in the function (like so: global variable). It is advised to avoid modifying global scope because it makes your code prone to errors :(

If you need to modify a global scope variable with a function, use the return statement instead. Like so:

Code from class:

enemies = 1

def increase_enemies(enemy):
   
print(f"enemies inside function: {enemy}")
   
return enemy + 1

enemies = increase_enemies(enemies)
print(f"enemies outside function: {enemies}")

global constants should be upper case. It serves as a reminder to not modify it along the line since it is different from the normal naming convection.

My Number Guessing Game Code:

import random
import art

print(art.logo)

print("Welcome to the number guessing game!")
print("I am thinking of a number between 1 and 100")

attempts =
0
number = random.randint(1, 100)
difficulty =
input("Choose a difficulty. Type 'easy' or 'hard': ").lower()

def game():
   
global attempts
   
print(f"You have {attempts} attempts remaining to guess the number.")
   
for attempt in range(attempts):
        guess =
int(input("Make a guess: "))

       
if guess == number:
           
print(f"You got it! The answer was {number}")
           
break

        else
:
            attempts -=
1

           
if attempts != 0:
               
if guess < number:
                   
print("Too low.")
                   
print("Guess again")

               
else:
                   
print("Too high.")
                   
print("Guess again")
               
print(f"You have {attempts} attempts remaining to guess the number.")

           
else:
               
print(f"You've run out of guesses. You lose")
               
print(f"Pssst, the correct answer is {number}")

if difficulty != "easy":
    attempts =
5
else:
    attempts =
10

game()

 

Let’s not be too hard on ourselves. As long as we keep trying, we are succeeding.

I have actually improved these past few days. Let’s not be too lenient either. We can do this!! Definitely :)


Comments

Popular posts from this blog

365 DAYS OF CODE - DAY 0

DAY 0 THOUGHT PROCESS Day Zero of the 365 days of code highlights my state of mind before the actual start of the program. Yes, it is a program. A program I set for myself to make sure I actually put in the work on a daily. I have tried coding before but have never been quite consistent with it. A friend advised me to try coding daily if I really wanted to be great at it someday. He also stated that it would take a long time and I should be prepared for it. During the same period, I noticed he was on a year's worth streak of chess which made me realize I could also do the same but with coding. I signed up for the 100 days of code course on Udemy and plan on starting my coding journey with Angela Yu and the thousands of students also taking the course. I also drafted my own copy of the pledge, copied and modified from the 100 Days of Python Pledge from the course materials. It is currently pasted on my wall as a constant reminder. Finally, I will also be recording my process here...

365 DAYS OF CODE - DAY 13

What is wrong with this code?? Can you tell what it does?? import art n1 = 0 n2 = 0 selected_operation = "" solution = 0 def add (n1, n2): return n1 + n2 def subtract (n1, n2): return n1 - n2 def multiply (n1, n2): return n1 * n2 def divide (n1, n2): return n1 / n2 operations = { "+" : add, "-" : subtract, "*" : multiply, "/" : divide } def rest_of_calculation (): print ( "+ \n - \n * \n /" ) selected_operation = input ( "Pick an operation: " ) n2 = float ( input ( "What is the next number?: " )) for key in operations: if key == selected_operation: solution = operations[key](n1, n2) print ( f" { n1 } { key } { n2 } = { solution } " ) print (art.logo) n1 = float ( input ( "What is the first number?: " )) rest_of_calculation() while True : new_calculation = input ( f"Type 'y' to continue calcu...

365 DAYS OF CODE - DAY 10

I realized that I have been tagging each day in accordance with the 100 days of python course . Now, I am one day behind (it is day 10 of the 365 days of code but day 9 on the python course I am taking right now) because I made sure to review unclear exercises yesterday. It is fine regardless. On day 9 of the python course, we looked at dictionaries, its table-likeness (2 columned) One tiny forgotten comma leads to 4 different errors and 1 warning, the prominent one being the SyntaxError. But shouldn’t it highlight line 3 instead of line 4?? Comma added, Error fixed. My Grading Program Code: student_scores = {     'Harry': 88,     'Ron': 78,     'Hermione': 95,     'Draco': 75,     'Neville': 60 }   student_grades = {}   for key in student_scores:     if student_scores[key] > 90:         student_scores[key] = "O...