Skip to content

Latest commit

ย 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ Python Developer Internship โ€” Arch Technologies

Welcome to my Python Developer Internship project repository at Arch Technologies.

This repository contains the projects and practical tasks I completed during my two-month internship, with a focus on developing Python programming skills through hands-on command-line applications.

Throughout the internship, I progressed from fundamental Python programming concepts to more structured applications involving game logic, data management, input validation, authentication, transaction processing, and application state management.


๐Ÿ“Œ Internship Overview

During this two-month internship, I completed four Python-based projects divided into two monthly task sets.

Month Task Project Main Focus
๐Ÿ“… Month 1 Task 1 ๐ŸŽฒ Dice Rolling Game Randomization, lists, tuples, functions, statistics
๐Ÿ“… Month 1 Task 2 ๐Ÿ“ To-Do List Application Lists, dictionaries, task management, validation
๐Ÿ“… Month 2 Task 1 ๐ŸŽฏ Number Guessing Game Game logic, difficulty levels, scoring, loops
๐Ÿ“… Month 2 Task 2 ๐Ÿง ATM Simulation Authentication, transactions, validation, data management

๐Ÿ“‚ Repository Structure

Arch_Technologies_Internship_Python_Developer/
โ”‚
โ”œโ”€โ”€ Month_1_Task/
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Task_1/
โ”‚   โ”‚   โ”œโ”€โ”€ Dice_Rolling_Game.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Task_2/
โ”‚   โ”‚   โ”œโ”€โ”€ To_Do_List_Application.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”‚
โ”‚   โ””โ”€โ”€ README.md
โ”‚
โ”œโ”€โ”€ Month_2_Task/
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Task_1/
โ”‚   โ”‚   โ”œโ”€โ”€ Number_guessing_Game.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Task_2/
โ”‚   โ”‚   โ”œโ”€โ”€ ATM_Simulation.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”‚
โ”‚   โ””โ”€โ”€ README.md
โ”‚
โ””โ”€โ”€ README.md

๐Ÿ“… Month 1 โ€” Python Fundamentals

The first month focused on strengthening core Python programming concepts by developing simple but functional command-line applications.

The projects helped me practice Python syntax, functions, data structures, loops, conditions, user input, and basic data processing.


๐ŸŽฒ Task 1 โ€” Dice Rolling Game

The Dice Rolling Game is a Python command-line application that allows users to roll two six-sided dice and analyze their results.

โœจ Features

  • ๐ŸŽฒ Roll two six-sided dice
  • ๐Ÿ”ข Calculate the total score
  • ๐Ÿ”ฅ Detect doubles
  • โญ Detect Lucky 7
  • ๐Ÿ† Detect the highest possible score
  • ๐Ÿ“œ Maintain complete roll history
  • ๐Ÿ“Š Display game statistics
  • ๐Ÿ“ˆ Calculate average score
  • โŒ Handle invalid menu choices
  • ๐Ÿšช Exit with a game summary

๐Ÿง  Concepts Practiced

  • random module
  • random.randint()
  • Functions
  • Lists
  • Tuples
  • while loops
  • Conditional statements
  • max()
  • min()
  • sum()
  • User input/output
  • f-strings

โ–ถ๏ธ Run

cd Month_1_Task/Task_1
python Dice_Rolling_Game.py

๐Ÿ“– Documentation

View Dice Rolling Game Documentation


๐Ÿ“ Task 2 โ€” To-Do List Application

The To-Do List Application is a command-line task management system that allows users to create and manage tasks.

Each task contains a task name and completion status.

โœจ Features

  • โž• Add new tasks
  • ๐Ÿ“‹ View all tasks
  • โœ… Mark tasks as completed
  • ๐Ÿ—‘๏ธ Remove completed tasks
  • ๐Ÿ“Š View task summary
  • ๐Ÿ“ˆ Display progress percentage
  • ๐Ÿ”ข Track completed and pending tasks
  • โŒ Validate empty task names
  • โš ๏ธ Handle invalid task numbers
  • ๐Ÿšช Exit the application

๐Ÿง  Concepts Practiced

  • Functions
  • Lists
  • Dictionaries
  • Boolean values
  • while loops
  • Conditional statements
  • enumerate()
  • sum()
  • len()
  • try-except
  • List comprehensions
  • Generator expressions
  • input() and print()
  • f-strings

โ–ถ๏ธ Run

cd Month_1_Task/Task_2
python To_Do_List_Application.py

๐Ÿ“– Documentation

View To-Do List Documentation


๐Ÿ“… Month 2 โ€” Practical Python Applications

The second month focused on building more interactive applications and applying Python concepts to more complete problem-solving scenarios.

The projects introduced additional concepts such as difficulty-based logic, scoring systems, authentication, transaction processing, input validation, and session management.


๐ŸŽฏ Task 1 โ€” Number Guessing Game

The Number Guessing Game is an interactive Python command-line game where the player attempts to guess a randomly generated number within a limited number of attempts.

The game includes multiple difficulty levels, hints, scoring, and multiple rounds.

โœจ Features

  • ๐Ÿ‘ค Player name input
  • ๐ŸŽฎ Three difficulty levels
  • ๐Ÿ”ข Random number generation
  • โค๏ธ Limited attempts
  • โฌ†๏ธ Too High / Too Low hints
  • ๐Ÿ”ฅ Close-number hints
  • โญ Difficulty-based scoring
  • ๐Ÿ”„ Multiple rounds
  • ๐Ÿ›ก๏ธ Input validation
  • ๐Ÿ“Š Total score tracking
  • ๐Ÿ† Rounds won tracking
  • ๐Ÿงพ Final game summary

๐ŸŽฏ Difficulty Levels

Difficulty Number Range Attempts
Easy 1โ€“50 8
Medium 1โ€“100 7
Hard 1โ€“200 6

๐Ÿง  Concepts Practiced

  • random module
  • random.randint()
  • Variables
  • for and while loops
  • Conditional statements
  • try-except
  • Arithmetic operations
  • Score calculation
  • Input validation
  • String formatting
  • Game flow management

โ–ถ๏ธ Run

cd Month_2_Task/Task_1
python Number_guessing_Game.py

๐Ÿ“– Documentation

View Number Guessing Game Documentation


๐Ÿง Task 2 โ€” ATM Simulation

The ATM Simulation is a Python command-line application that simulates common ATM operations.

Users authenticate with a PIN before accessing their account. After successful authentication, they can check their balance, withdraw and deposit money, view transaction history, and change their PIN.

โœจ Features

  • ๐Ÿ” PIN verification with 3 attempts
  • ๐Ÿ‘ค Account holder information
  • ๐Ÿ’ฐ Balance inquiry
  • ๐Ÿ’ต Money withdrawal
  • ๐Ÿ’ณ Money deposit
  • ๐Ÿ“‹ Mini statement
  • ๐Ÿ” PIN change
  • ๐Ÿงพ Session summary
  • ๐Ÿ• Current date and time
  • โš ๏ธ Input validation
  • ๐Ÿ’ธ Withdrawal and deposit limits
  • ๐Ÿ”ข Withdrawal amount validation
  • ๐Ÿšช Secure session exit

๐Ÿ’ณ Transaction Rules

Operation Rule
PIN Login Maximum 3 attempts
Withdrawal Greater than Rs. 0
Withdrawal Multiple of Rs. 500
Maximum Withdrawal Rs. 20,000
Withdrawal Cannot exceed available balance
Deposit Greater than Rs. 0
Maximum Deposit Rs. 100,000
New PIN Exactly 4 digits
PIN Change Must be different from old PIN

๐Ÿง  Concepts Practiced

  • Variables
  • Functions
  • Lists
  • Loops
  • Conditional statements
  • try-except
  • Input validation
  • String methods
  • Transaction management
  • datetime
  • append()
  • len()
  • break
  • f-strings

โ–ถ๏ธ Run

cd Month_2_Task/Task_2
python ATM_Simulation.py

๐Ÿ“– Documentation

View ATM Simulation Documentation


๐Ÿ› ๏ธ Technologies & Tools

The projects developed during the internship primarily use Python and its standard library.

Programming

  • ๐Ÿ Python 3
  • Python Standard Library

Python Modules

  • random
  • datetime

Development Tools

  • Visual Studio Code
  • Git
  • GitHub
  • Command Line / Terminal

Documentation

  • Markdown
  • GitHub README files

No external Python packages are required to run these projects.


๐Ÿง  Python Skills Developed

Throughout the two-month internship, I practiced and strengthened a range of Python programming concepts.

๐Ÿ”น Python Fundamentals

  • Variables
  • Data types
  • Operators
  • Input/output
  • String manipulation
  • Type conversion

๐Ÿ”น Control Flow

  • if
  • elif
  • else
  • for loops
  • while loops
  • break
  • Nested conditions

๐Ÿ”น Functions

  • Creating functions
  • Reusable program logic
  • Passing arguments
  • Returning values
  • Organizing application logic

๐Ÿ”น Data Structures

  • Lists
  • Tuples
  • Dictionaries
  • Boolean values

๐Ÿ”น Error Handling

  • try-except
  • Input validation
  • Handling invalid menu choices
  • Handling invalid numerical input

๐Ÿ”น Data Processing

  • sum()
  • min()
  • max()
  • len()
  • enumerate()
  • List comprehensions
  • Generator expressions

๐Ÿ”น Application Logic

  • Random number generation
  • Game state management
  • Score calculation
  • Attempt tracking
  • Progress calculation
  • Balance management
  • Transaction tracking
  • Authentication logic

๐Ÿ“ˆ Internship Learning Progress

The projects represent a gradual progression in Python development.

                 ๐Ÿ PYTHON DEVELOPER INTERNSHIP
                              โ”‚
                              โ–ผ
                    ๐Ÿ“… MONTH 1
                              โ”‚
             โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
             โ–ผ                                 โ–ผ
      ๐ŸŽฒ Dice Rolling                    ๐Ÿ“ To-Do List
             โ”‚                                 โ”‚
      Randomization                       Data Structures
      Functions                           Lists
      Tuples                             Dictionaries
      Statistics                         Task Management
             โ”‚                                 โ”‚
             โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ–ผ
                    ๐Ÿ“… MONTH 2
                              โ”‚
             โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
             โ–ผ                                 โ–ผ
      ๐ŸŽฏ Number Guessing                 ๐Ÿง ATM Simulation
             โ”‚                                 โ”‚
      Game Logic                         Authentication
      Difficulty                         Transactions
      Scoring                            Validation
      Attempts                           Balance Management
      Multiple Rounds                    Session Management
             โ”‚                                 โ”‚
             โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ–ผ
                    ๐Ÿš€ PRACTICAL PYTHON
                              โ”‚
                              โ–ผ
                  PROBLEM-SOLVING SKILLS

๐Ÿ“Š Project Comparison

Project Main Concepts Application Type
๐ŸŽฒ Dice Rolling Game Randomization, functions, lists, tuples, statistics Game
๐Ÿ“ To-Do List Lists, dictionaries, task management, validation Productivity
๐ŸŽฏ Number Guessing Game Randomization, loops, scoring, difficulty Game
๐Ÿง ATM Simulation Authentication, transactions, validation, lists Banking Simulation

๐ŸŽฏ Internship Objectives

The main objectives of this internship were to gain practical experience with Python programming and apply programming concepts to real-world-style problems.

During the two months, I worked on:

  • Building command-line applications
  • Understanding application requirements
  • Designing program logic
  • Working with Python data structures
  • Creating reusable functions
  • Implementing input validation
  • Handling errors and unexpected input
  • Managing application state
  • Processing and displaying data
  • Creating interactive user interfaces through the terminal
  • Organizing projects into structured folders
  • Writing project documentation
  • Using Git and GitHub for project management

๐Ÿš€ Future Learning

The foundation developed through these projects can be extended toward more advanced Python development areas, including:

  • Object-Oriented Programming
  • File handling
  • JSON and CSV data processing
  • Database integration
  • REST APIs
  • Web development with Flask or FastAPI
  • Automation and scripting
  • Testing and debugging
  • Data analysis
  • Machine Learning
  • Artificial Intelligence

๐Ÿ“š Internship Projects

Month 1

Month 2


๐Ÿ‘ฉโ€๐Ÿ’ป Author

Aqsa Saqib

Python Developer Intern โ€” Arch Technologies


๐Ÿ“„ License

These projects were developed for educational and internship learning purposes as part of my Python Developer Internship at Arch Technologies.

About

This repository showcases Python development projects, technical assignments, and practical implementations completed during my internship at Arch Technologies. It includes hands-on work focused on Python programming, problem-solving, automation, and building interactive applications through real-world development tasks.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages