0% found this document useful (0 votes)
23 views26 pages

Python Internship Report 2024-2025

FORMAT

Uploaded by

priyanshu1734j
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views26 pages

Python Internship Report 2024-2025

FORMAT

Uploaded by

priyanshu1734j
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

INDUSTRIAL TRAINING INTERNSHIP REPORT

ON

PYTHON PROGRAMMING DOMAIN


By
Disha Pandey

DEPARTMENT OF ARTIFICIAL INTELLIGENCE AND DATA SCIENCE


MAHAKAL INSTITUTE OF TECHNOLOGY ,UJJAIN
2024-2025
TRAINING INTERNSHIP REPORT
ON

PYTHON PROGRAMMING
By
Disha Pandey
Guided by:
Mrs. Krati Kumari
Internship Supervisor

DEPARTMENT OF ARTIFICIAL INTELLIGENCE AND DATA SCIENCE


MAHAKAL INSTITUTE OF TECHNOLOGY ,UJJAIN
2024-2025
CERTIFICATE

This is to certify that Industrial Training Internship Report entitled “PYTHON”


has been submitted by DISHA PANDEY for partial fulfillment of the [Link]
from Mahakal Instituteof Technology. It is found satisfactory and approved for
submission.

Date:
08/07/2024
Prof. Kamlesh Ahuja
HOD
Department of Artificial Intelligence and Data Science

Dr. Mukesh Shukla


Principal/Director
M.I.T. Ujjain
ATTENDANCE CERTIFICATE

This is to certify that DISHAPANDEY has successfully completed an internship


program at
INTERNPE.

During this period, [he/she] demonstrated commendable dedication and enthusiasm


towards [his/her] assigned tasks and responsibilities. She actively participated in
various projects and initiatives, contributing positively to the team's objectives.

Internship Supervisor: Krati Kumari

This certificate is awarded in recognition of her commitment and valuable


contribution to Internpe.

HR INTERNPE
INTERNSHIP MENTOR DECLARATION

This is to certify that the Industrial Training Internship In INTERNPE


entitled PYTHON by DISHA PANDEY has been done successfully and
completed all the tasks provided in the internship.

Date:
05/07/202
4
Acknowledgment
I would like to express my sincere gratitude to InternPe for the opportunity to
intern in the Python Development during 15 July 2024 to 11 August 2024. This
experience has been invaluable in enhancing my skills and understanding of
Python Programming.

I am particularly thankful to my supervisor, Mrs. Krati Kumari, for their


guidance and support throughout my internship. Their mentorship has been
instrumental in my personal and professional growth.

I also appreciate the entire team for their warm welcome and collaboration,
which made my time here both enjoyable and enriching. I look forward to
applying what I‟ve learned as I continue my career journey.

Thank you once again for this incredible opportunity.

Sincerely,
Disha Pandey
0704AD211014
---
About Company

InternPe is a company focused on connecting students with internships and


career opportunities. It typically offers a platform where students can find
internships in various fields, helping them gain practical experience and enhance
their employability.

The company may also provide resources such as resume building, interview
preparation, and career guidance to support students in their professional
development.
Abstract

This report outlines my internship experience at InternPe, where I focused on


Python programming and game development. Throughout my internship, I
designed and implemented several game projects that enhanced my technical
skills and deepened my understanding of game mechanics, user experience, and
programming principles. The projects included a variety of genres, from simple
text-based games to more complex graphical applications, utilizing libraries such
as Pygame. This experience not only honed my coding abilities but also fostered
creativity and problem-solving skills as I navigated challenges in game design and
development. The report discusses the methodologies employed, challenges faced,
and key learnings, highlighting the valuable contributions I made to the team and
my growth as a developer during this internship.
.
TABLE OF INDEX

Certificate 3
Internship mentor declaration 4
Acknowledgment 5
About company 6
Abstract 7
1. Chapter 1. Introduction 8
1.1 Introduction 8
1.2 Objective 8
1.3 Tools and Technologies used 9

2. Chapter 2. Training work undertaken 10


2.1 Task Discription .
.
3. Conclusion 11.
.
CHAPTER- 1
INTRODUTION
1.1 Introduction

This report summarizes my experience as a Python programming intern at


InternPE, where I had the opportunity to develop a variety of game projects.
Throughout the internship, I applied my programming skills to create engaging
and interactive games, enhancing my understanding of Python and its application
in game development.

These projects not only allowed me to experiment with different programming


concepts but also provided valuable insights into problem-solving, teamwork, and
project management. This report details the projects I undertook, the technologies
used, and the skills I gained during my internship.

1.2 Objective

The main objectives of the game projects are:

1. Skill Development: Enhance programming skills in Python, focusing on game


development frameworks (e.g., Pygame, Panda3D).

2. Project Planning: Learn to plan and design game projects, including


storyboarding, character design, and gameplay mechanics.

3. Implementation: Gain experience in coding game logic, user interfaces, and


integrating multimedia elements (graphics, sound).

4. Testing and Debugging: Develop skills in testing games for bugs, optimizing
performance, and ensuring a smooth user experience.

5. Version Control: Utilize version control systems (e.g., Git) for collaborative
development and project management.

6. Documentation: Create comprehensive documentation for code, game


mechanics, and user guides for future reference.

7. Feedback and Iteration: Implement user feedback to improve game design and
functionality through iterative development.

8. Portfolio Development: Build a portfolio of completed game projects to


showcase skills to potential employers.

9. Collaboration: Work effectively in a team environment, communicating ideas


and resolving conflicts during project development.

10. Time Management: Develop time management skills by adhering to project


deadlines and milestones throughout the internship.

1.3 Tools and Technologies used

The development of the game projects use of the following tools and
technologies:

1. Pygame: A popular library for making 2D games; it provides functionalities for


graphics, sound, and game physics.
2. Panda3D: A powerful 3D game engine suitable for both beginners and
advanced users.
3. Visual Studio Code: A versatile code editor with extensions for Python and
game development.
4. PyCharm: A powerful IDE specifically designed for Python, offering features
like debugging and code analysis.
5. Git: For version control, allowing teams to collaborate efficiently.

[Link] / PyTorch: For integrating AI and machine learning elements into


games.
CHAPTER-2
TRAINING WORK UNDERTAKEN

TASK DESCRIPTION

TASK1:

DIGITAL CLOCK TASK:

OBJECTIVE:

Time Retrieval :Obtain the current time from the system clock.

Display Format: Format the time into a readable digital clock

format(e.g.,HH:MM:SS). Update:Continuously update the display to reflect real-

time changes.

User Interaction(Optional):Allow users to interact,such as setting alarm sortoggling


between 12-hour and 24-hour formats.
HOWTO PERFORM:

Certainly! Here's a step-by-step guide without providing specific code:


1. Import Time Module:
-Use the „time‟ module in Python to work with time-related functions.
2. Retrieve Current Time:
-Utilize the „time‟ module to get the current time from the system clock.

3. Format Time:
-Format the retrieved time into a readable digital clock format( hours, minutes,
seconds).

4. Display Time:
-Display the formatted time continuously to create a real-time updating digital
clock.
5. Optional: User Interaction:
-Consider adding user interaction features, such as setting alarms, adjusting
time formats, or providing additional functionalities.

6. Run Indefinitely:
-Use a loop to run the clock continuously, updating the display in real-time.

7. Error Handling:
-Implement error handling to manage unexpected issues, ensuring the
clock operates smoothly.

8. Optional: GUI Implementation(Tkinter):


-If desired, explore using the Tkinter library to create a graphical user
interface for the digital clock.

9. Documentation:
-Provide comments and documentation to explain the functionality of the code
for future reference or collaboration.

10. Testing:
-Test the digital clock under different scenarios to ensure accuracy and
reliability.
TASK2:

TIC TAC TOE GAME TASK:

OBJECTIVE:

i. Player Interaction: Allow two players to take turns marking spaces on


a 3x3 grid.
ii. Winning Condition : Define conditions for a player to win by
having three marks in a row, column, or diagonal.
iii. Tie Detection: Identify when the game results in a tie with no empty
spaces left.
iv. User Experience: Ensure a user-friendly experience with clear
instructions, valid move validation, and an option to replay.

HOWTO PERFORM:

Certainly! Here's a non-code, step-by-step guide on how to create a basic


Tic Tac Toe game in Python:

1. Game Board Setup:


- Create a 3x3 grid to represent the game board.

2. Player Turns:
- Allow two players to take turns marking empty spaces on the grid.

3. Winning Conditions:
- Define winning conditions by checking for three marks in arrow, column, or
diagonal.

4. Tie Detection:
- Implement logic to detect a tie when there are no empty spaces left on the
board.
5. User Interaction:
- Enable user interaction by allowing players to input their moves.

6. Feedback:
- Provide clear feedback after each move ,indicating if a player has won
,the game is a tie, or if it's the next player's turn.
7. User Interaction:
- Enable user interaction by allowing players to input their moves.

[Link]:
- Provide clear feedback after each move ,indicating if a player has won ,the
game is a tie, or if it's the next player's turn.

9. Reset and Replay:


- Include functionality to reset the gameboard for a new match.
- Allow players to replay without needing to restart the program.

10. Validation:
- Validate moves to ensure players can only mark empty spaces and avoid illegal
moves.

11. User Interface Enhancements:


- Consider adding user-friendly features such as highlighting winning
combinations or animating the marks.

[Link] and Debugging:


- Test the game thoroughly, including edge cases like invalid inputs, and
debug any issues to ensure smooth game play.

[Link] Features(if time allows):


- Explore additional features like a scoreboard, customizable player marks,
or a graphical user interface.
TASK3:

SNAKE GAME TASK:

OBJECTIVE:

1. Player Control : Allow the player to control a snake's movement on a grid.

2. Food Interaction: Implement the appearance of food for the snake to consume
and grow.
3. Collision Detection: Detects collisions between the snake and the game
boundaries or itself.
4. Score keeping: Keep track of the player's score based on the number of food
items consumed.

HOW TO PERFORM:

Certainly! Here's a non-code, step-by-step guide on how to create a basic


Snake Game in Python:

1. Grid Setup:
- Design a grid-based environment where the snake will move.

2. Player Control:
- Allow the player to control the snake's movement using arrow keys or a similar
input method.

3. Snake Movement:
- Implement logic for the snake to move continuously in the direction set by the
player.

4. Food Generation:
- Introduce food items randomly on the grid for the snake to consume and grow.

5. Collision Detection:
- Detects collisions between the snake and the game boundaries or itself.
- Implement game-over conditions when a collision occurs.

6. Snake Growth:
- Define the rules for the snake to grow longer after consuming food.
7. Score keeping:
- Keep track of the player's score based on the number of food items consumed.

8. Game Loop:
- Create a game loop that continually updates the game state, handles user
input, and redraws the screen.

9. Graphics(Optional):
- Optionally, enhance the game by adding graphical elements or animations.

10. Speed Control(Optional):

Consider implementing a mechanism to increase the snake's speed as


-
the player's score grows.

11. User Interface Enhancements:


- Include visual feedback for important events, suchas snake growth or game
over.

12. Testing and Debugging:


- Test the game thoroughly to ensure smooth game play and address any bugs or
issues.

[Link]:
- Provide comments and documentation to explain the functionality of
the code for future reference or collaboration.
TASK 4:

CONNECT 4 GAME TASK:

OBJECTIVE:

1. Grid Structure : Create a 6x7 grid to represent the Connect 4 game board.
2. Player Interaction: Allow two players to take turns dropping colored discs into columns.
3. Winning Condition: Define conditions for a player to win by connecting four discs
horizontally, vertically, or diagonally.
4. User Experience: Ensure a user-friendly experience with clear instructions,
valid move validation, and an option to replay.

HOWTO PERFORM:

Certainly! Here's a non-code, step-by-step guide on how to create a basic Connect4


game in Python:

1. Grid Setup:
- Create a 6x7 grid to represent the Connect4 game board.

2. Player Turns:
- Allow two players to take turns dropping colored discs into columns.

3. Disc Placement:
- Enable user interaction by allowing players to drop their discs into columns.
- Implement logic to place the disc in the lowest available position within the selected
column. .

4. Winning Conditions:
- Define winning conditions by checking for four consecutive discs in arrow,
column, or diagonal.
- Implement logic to detect and announce a winner.
5. Tie Detection:
- Implement logic to detect a tie when the grid is full with no Connect4.

6. User Interface:
- Provide clear feedback after each move ,indicating the current player, the
outcome of the move, and game status.

7. Reset and Replay:


- Include functionality to reset the game board for a new match.
- Allow players to replay without needing to restart the program.

8. Validation:
- Validate moves to ensure players can only drop discs invalid columns and
avoid illegal moves.

9. User Interface Enhancements:


- Consider adding user-friendly features such as highlighting winning
combinations or animating the disc placements.

10. Testing and Debugging:


- Test the game thoroughly, including edge cases like invalid inputs, and debug any
issues to ensure smooth game play.

-
CONCLUSION

My Python internship at INTERNPE has been an incredibly valuable and


transformative experience. Over the course of this internship, I have gained a
comprehensive understanding of Python programming and its applications in various
domains, ranging from web development to data analysis.

A key project I contributed to involved CONNECT 4 GAME. This project allowed


me to apply Python's capabilities to solve real-world problems, reinforcing my
knowledge of algorithms, data structures, and best practices in software engineering.
Additionally, I gained hands-on experience with version control systems like Git and
collaborative tools like JIRA.
The supportive and collaborative environment at INTERNPE enabled me to work
closely with experienced professionals, participate in code reviews, and receive
constructive feedback. This experience significantly improved my problem-solving
abilities, debugging skills, and understanding of the development lifecycle.

Overall, this internship has been a crucial step in my career development. It has
equipped me with the technical skills and confidence to tackle complex programming
challenges and contribute effectively to any development team. I am grateful for the
mentorship and support provided by my colleagues at INTERNPE and look forward to
applying the knowledge and experience I have gained in my future endeavors.

Common questions

Powered by AI

The internship experience significantly impacted Disha Pandey's understanding of version control and its importance in collaborative projects. Using Git, she learned to manage different versions of the project code, track changes, and revert to previous versions if necessary. This understanding was crucial for maintaining code integrity and streamlining the collaborative development process. The ability to work on shared repositories efficiently demonstrated how version control systems are integral to team-based projects, ensuring that all team members can contribute effectively while minimizing conflicts .

The internship at Internpe was highly beneficial for Disha Pandey in skill development and practical application, mainly due to the opportunity to work on Python programming projects related to game development. She enhanced her technical skills by designing and implementing various projects, which improved her understanding of programming principles, game mechanics, and user experience. The use of libraries such as Pygame for developing these applications honed her coding abilities and fostered creativity and problem-solving skills as she dealt with challenges in game design and development .

Disha Pandey's role in game development at Internpe significantly contributed to her understanding of software project management. Through this role, she learned to plan and design projects, including storyboarding, character design, and gameplay mechanics. She gained experience in implementing game logic, testing, debugging, and iterating based on feedback, which are critical aspects of project management. Moreover, she utilized version control systems like Git, which facilitated collaborative development and project management. This holistic experience enhanced her skills in time management and teamwork, vital components of effective project management .

Disha Pandey applied the feedback and mentorship from experienced professionals at Internpe to significantly enhance her technical skills and professional conduct. Her participation in code reviews and receiving constructive feedback allowed her to refine her problem-solving and debugging abilities. The supportive environment fostered collaboration and communication, crucial for professional growth. This mentorship was instrumental in her understanding of the software development lifecycle, which in turn increased her confidence to tackle complex programming challenges and contribute effectively to development teams .

Disha Pandey's core objectives in her Python game projects included enhancing her programming skills, learning project planning and design, gaining experience in game implementation, and developing skills in testing, debugging, and version control systems. These objectives aligned with her professional development goals by enabling her to create a portfolio of completed projects, work collaboratively within a team, and manage time effectively by adhering to project deadlines. These experiences enriched her skill set, making her more employable and prepared for future career opportunities in software development .

During her internship, Disha Pandey faced several challenges, primarily associated with game design and development. As she navigated issues related to game physics and user experience, she applied problem-solving strategies to address these challenges. By utilizing libraries such as Pygame extensively, she experimented with different programming concepts and methodologies to overcome difficulties. Her ability to incorporate feedback into iterative development processes was crucial in refining her projects and successfully addressing the challenges encountered .

The internship at Internpe extended Disha Pandey's knowledge of Python libraries and frameworks primarily through hands-on experience in game development. She worked extensively with libraries such as Pygame, which helped her understand its functionalities for graphics, sound, and game physics. Additionally, she was exposed to Panda3D, a 3D game engine, and utilized IDEs like Visual Studio Code and PyCharm for coding and debugging. This experience enabled her to grasp the practical application of these libraries within game projects and improve her technical proficiency in Python programming .

The use of tools and technologies such as Git and JIRA played a significant role in Disha Pandey's proficiency in software development during her internship. Git facilitated efficient version control and collaborative development, allowing her to manage project changes and coordinate with team members effectively. JIRA, a project management tool, helped her track tasks and project progress systematically, thereby improving her organizational skills. These tools taught her industry-standard practices for software development, enhancing her capabilities as a programmer .

Disha Pandey employed several methodologies during her Python programming projects to ensure their successful completion. She focused on detailed project planning, which involved storyboarding and defining gameplay mechanics. For implementation, she wrote efficient code to handle game logic and user interfaces, integrating multimedia elements like graphics and sound using Pygame. Pandey also incorporated iterative development, testing, and debugging to refine game performance and user experience. Her use of version control systems, such as Git, and adherence to documentation ensured organized project management and collaboration .

Key learnings and personal developments that Disha Pandey identified from her internship, which benefit her future career in technology, include enhanced problem-solving abilities, debugging skills, and a deeper understanding of the software development lifecycle. The hands-on experience with Python programming, particularly in game development, taught her the importance of structured project planning, implementation, and testing. This experience equipped her with the technical skills and confidence needed to tackle complex challenges and contribute effectively to any development team, ultimately shaping her as a competent software developer .

You might also like