Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 21

Dr. A.P.J.

Abdul Kalam Technical University


University in Uttar Pradesh

A mini project report on

HANGMAN GAME

Submitted By:

JATIN GUPTA 2001610100102


LAKSHAY MULLICK 2001610100116

Under the Guidance of

Department of Computer Science and Engineering


(Session 2022-2023)
Krishna Engineering College
College in Ghaziabad, Uttar Pradesh
Krishna Engineering College
Department of Computer Science and Engineering

Certificate
This is to certify that the project entitled “HANGMAN GAME” is a bonafede
work carried out by Lakshay Mullick (20016101100116) and Jatin Gupta
(2001610100102) as a part of “ Mini Project” Computer Science and Engineering
during the year 2 0 2 2 -
2023.

Faculty Name- Signature:


ABSTRACT

This is a simple Hangman game using Python programming language. We can use this as
a small project to boost their programming skills and understanding logic. The Hangman
program randomly selects a secret word from a list of secret words. The random module will
provide this ability, so line 1 in program imports it. Hangman is a popular word game in
which one player (the "chooser") chooses a secret word and another player (the "guesser")
attempts to guess the word one letter at a time. If a guessed letter appears in the word,
all instances of it are revealed. If not, the guesser loses a chance. If the guesser figures
out the secret word before
he or she runs out of chances, he or she wins. If not, the player who chose the word wins.
TABLE OF CONTENTS

TOPIC PAGE NO

1. INTRODUCTION

1.1Python Programming Language 2

1.2 Applications of Python 4

2. SYSTEM REQUIREMENTS

2.1 Software Requirements 5

2.2 Hardware Requirements 5

3. IMPLEMENTATION AND RESULTS

3.1 Project Code 6

3.2. Results 10

CONCLUSION 12

REFERENCES 12
Hangman Game

ORGANIZATION OF THE REPORT

The report is divided into various chapters and is organized as follows:

Chapter 1: Introduction
This chapter includes brief introduction to Python Programming Language and its applications.

Chapter 2: System requirements


This chapter includes details of hardware and software requirements necessary for the
execution of the project.

Chapter 3: Implementation and Results


This chapter includes the program code of the project and the results of successful runs of the
code.

Conclusion
This section includes the conclusion about the project.

References
This section includes the bibliographical references used for the development of the project.

Dept. of CSE, KEC Page 2022-


Hangman Game

CHAPTER 1

INTRODUCTION
1.1. Python Programming language
Python is one of the many open source object oriented programming application
software available in the market . Python is developed by Guido van Rossum. Guido
van Rossum started implementing Python in 1989. Python is a very simple programming
language so even if you are new to programming, you can learn python without facing any
issues. Some of the many uses of Python are application development, implementation
of automation testing process, allows multiple programming build, fully constructed
programming library, can be used in all the major operating systems and platforms,
database system accessibility, simple and readable code, easy to apply on complex
software development processes, aids in test driven software application development
approach, machine learning/ data analytics, helps pattern recognitions, supported in
multiple tools, permitted by many of the provisioned
frameworks, etc.
Some features of Python are-

Dept. of CSE, KEC Page 2022-


Hangman Game

1. Readable: Python is a very readable language.

2. Easy to Learn: Learning python is easy as this is a expressive and high level
programming language, which means it is easy to understand the language and thus easy to learn.

3. Cross platform: Python is available and can run on various operating systems such as
Mac, Windows, Linux, Unix etc. This makes it a cross platform and portable language.

4. Open Source: Python is a open source programming language.

5. Large standard library: Python comes with a large standard library that has some handy
codes and functions which we can use while writing code in Python.

6. Free: Python is free to download and use. This means you can download it for free and use it
in your application. See: Open Source Python License. Python is an example of a FLOSS
(Free/Libre Open Source Software), which means you can freely distribute copies of this software,
read its source

code and modify it.

7. Supports exception handling: If you are new, you may wonder what is an exception? An
exception is an event that can occur during program exception and can disrupt the normal flow
of program. Python supports exception handling which means we can write less error prone code and
can test various scenarios that can cause an exception later on.

8. Advanced features: Supports generators and list comprehensions. We will cover these
features later.

9. Automatic memory management: Python supports automatic memory management which


means the memory is cleared and freed automatically

Dept. of CSE, KEC Page 2022-


Hangman Game

1.2. Applications of Python programming language

Python can be used to develop different applications like web applications, graphic user
interface based applications, software development application, scientific and numeric
applications, network programming, Games and 3D applications and other business applications.
It makes an interactive interface and easy development of applications. You may be wondering
what all are the applications
ofPython. There are so many applications of Python, here are some of the them.

1. Web development – Web framework like Django and Flask are based on Python. They help
you write server side code which helps you manage database, write backend programming logic,
mapping urls etc.

2. Machine learning – There are many machine learning applications written in Python.
Machine learning is a way to write a logic so that a machine can learn and solve a particular
problem on its own. For example, products recommendation in websites like Amazon, Flipkart,
eBay etc. is a machine learning algorithm that recognises user’s interest. Face recognition and
Voice recognition in your phone is another example of machine learning.

3. Data Analysis – Data analysis and data visualisation in form of charts can also be developed
using Python.

4. Scripting – Scripting is writing small programs to automate simple tasks such as sending
automated response emails etc. Such type of applications can also be written in Python programming
language.

5. Game development – You can develop games using Python.

6. You can develop Embedded applications in Python.

7.Desktop applications – You can develop desktop application in Python using library like TKinter
or QT.

Dept. of CSE, KEC Page 2022-


Hangman Game

CHAPTER 2

SYSTEM REQUIREMENTS

2.1 Software Requirements


PyCharm2019.1.1(Community Edition)
Build#PC- 191.6605.12,built on April 3, 2019
JRE:11.0.2+9-b159.34amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
2.2 Hardware Requirements
Operating system: windows 10
Processor: intel core i5
Disk space:1Gb

Dept. of CSE, KEC Page 2022-


Hangman Game

CHAPTER 3

IMPLEMENTATION AND RESULTS

3.1 About Project


This is a simple Hangman game using Python programming language. Beginners can use this as a
small project to boost their programming skills and understanding logic.

1. The Hangman program randomly selects a secret word from a list of secret words. The
random module will provide this ability, so line 1 in program imports it.

2. The Game: Here, a random word (a fruit name) is picked up from our collection and the
player gets limited chances to win the game.

3. When a letter in that word is guessed correctly, that letter position in the word is made visible.
In this way, all letters of the word are to be guessed before all the chances are over.

4. For convenience, we have given length of word + 2 chances. For example, word to be guessed
is mango, then user gets 5 + 2 = 7 chances, as mango is a five letter word.

3.2 Project code

import random
from json import load

def get_word():
with open('words.json') as json_file

data = load(json_file)

wordArray = data["word_list"]
word = random.choice(wordArray)

word = word.upper()

return word
def play(word):

word_completion = "_" * len(word) # generate a line to show the number of word


guessed = False # indicate the status of guess

guessed_letters = [] # store guessed letters


guessed_words = [] # store guessed words

Dept. of CSE, KEC Page 2022-


Hangman Game
tries = 6 # user have 6 times of wrong

print("Let's play Hangman!")

print(display_hangman(tries))

print(word_completion)

print("\n")
print("Length of the word: ", len(word))

print("\n")

while not guessed and tries > 0:


guess = input("Please guess a letter or the word: ").upper()

if len(guess) == 1 and guess.isalpha():

if guess in guessed_letters:
print("You already guessed the letter", guess)

elif guess not in word:


print(guess, "is not in the word.")

tries -= 1
guessed_letters.append(guess)

else:
print("Good job,",guess, "is in the word!")

guessed_letters.append(guess)

word_as_list = list(word_completion)
indices = [i for i, letter in enumerate(word) if letter == guess]

for index in indices:


word_as_list[index] = guess
word_completion = "".join(word_as_list)

if "_" not in word_completion:

guessed = True
elif len(guess) == len(word) and guess.isalpha():

if guess in guessed_word
print("You already guessed the word", guess)

elif guess != word:

print(guess, "is not the word.")

Dept. of CSE, KEC Page 2022-


Hangman Game

tries -= 1
guessed_words.append(guess)

else:
guessed = True
word_completion = word

else:
print("Not a valid guess.")
print(display_hangman(tries))

print(word_completion)

print("\n")

print("Length of the word: ", len(word))


print("\n")

if guessed:
print("Congrats, you guessed the word! You win!")

else:
print("Sorry, youran out of tries. The word was " + word + ". Maybe next time!")
def display_hangman(tries):

stages = ["""

--------
| |
| 0

| \\|/

| |

| / \\

-
""",
"""

--------
| |
| 0

| \\|/

| |

Dept. of CSE, KEC Page 2022-


Hangman Game
| /

""",
"""

| |
0
| \\|/

|
|

|
|

-
""",
"""

| |

0
| \\|

|
|

|
|

-
""",
"""

| |

| 0

| |

Dept. of CSE, KEC Page 2022-


Hangman Game
| |

-
""",
"""

Dept. of CSE, KEC Page 2022-


Hangman Game

| |

| 0
|

""",
"""

| |
|

-
"""

]
return stages[tries]

def main():
word = get_word()

play(word)

while input("Play Again? (Y/N): ").upper() == "Y":


word = get_word()

play(word)
if __name__ == "__main__":

main()

Dept. of CSE, KEC Page 2022-


Hangman Game

3.3 Results
Snapshots taken from successful runs of the project

Snapshot 3.1: output screen

Snapshot 3.2:output screen(false case)

Dept. of CSE, KEC Page 2022-


Hangman Game

Snapshot 3.3: output screen (First true case)

Snapshot 3.4: output screen (True case)

Dept. of CSE, KEC Page 2022-


Hangman Game

Snapshot 3.5: output screen (True case)

Snapshot 3.6: output screen (Already guessed case)

Dept. of CSE, KEC Page 2022-


Hangman Game

Snapshot 3.7: output screen (Game Over)

Dept. of CSE, KEC Page 2022-


Hangman Game

CONCLUSION

In the conclusion of this project, Hangman is a traditional game, typically played with words.
It’s possible, however, to play Category Hangman rather than guessing words the player might
guess names of cities, or athletes, or fictional characters, or Duke professors, or top forty song titles
the list is endless. You’ll be writing a program to play a “guess a word letter-by-letter” version of
hangman as
shown above. You’ll also be doing some statistical analysis of the words used in the Hangman game.

REFERENCES

Bibliography:
[1] “Python for everybody”, Charles R.Severance
[2] “Think Python”, Allen B.Downey
[3]”Python programming”, Mark lutz

Websites:
[1]https://www.youtube.com/watch?v=QXeEoD0pB3E&list=PLsyeobzWxl7poL9JTVyndKe6
2ieoN-MZ3
[2]https://www.youtube.com/watch?v=NKVOjPHfiSA
[3] https://www.youtube.com/watch?v=BDi3SD7E6no

Dept. of CSE, KEC Page 2022-

You might also like