KEMBAR78
Sample Project | PDF | Python (Programming Language) | Comma Separated Values
0% found this document useful (0 votes)
7 views23 pages

Sample Project

Uploaded by

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

Sample Project

Uploaded by

kafeelhassan133
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 23

TABLE OF CONTENTS

1. INTRODUCTION

2. OBJECTIVE & SCOPE OF THE PROJECT

3. THEORETICAL BACKGROUND

4. SYSTEM IMPLEMENTATION

4.1 THE HARDWARE USED:

4.2 THE SOFTWARES USED:

5. SYSTEM DESIGN & DEVELOPMENT

5.1 SYSTEM DESIGN:

5.2 I/O FORMS DESIGN & EVENT CODING:

5.3 Conclusion: -------------------------------------------------------------------

6. USER MANUAL

6.1 HOW TO INSTALL:

6.2 WORKING WITH SOFTWARE:

7. REFERENCES
1. INTRODUCTION

Introduction :

Python is a high-level scripting language which can be used for a wide variety

of text processing, system administration and internet-related tasks. Unlike

many similar languages, it’s core language is very small and easy to master,

while allowing the addition of modules to perform a virtually limitless variety

of tasks. Python is a true object-oriented language, and is available on a wide

variety of platforms. There’s even a python interpreter written entirely in Java,

further enhancing python’s position as an excellent solution for internet-based

problems.

With musical instruments gaining popularity, this Instrument Catalog program

offers an efficient solution for managing instrument records. Users can easily

add, update, search, delete, and select instrument details from the comfort of

their own devices. The Instrument Catalog helps in maintaining records of

various instruments, including their name, genre, origin, timbre, material, and

associated artists. It also allows users to keep their profiles updated.

Additionally, the program ensures that all changes and updates are accurately

reflected in the catalog, making it a reliable tool for both musicians and music

enthusiasts.
2. OBJECTIVES & SCOPE OF THE PROJECT

The objective of the Instrument Catalog program is to provide a comprehensive

and efficient solution for managing musical instrument records.It aims to

facilitate the detailed instrument information in a user-friendly manner.By

maintaining organized records of various instruments the program ensures that

users can easily manage and access important data. Additionally, it allows users

to update their profiles, enhancing the overall user experience and ensuring that

the catalog remains accurate and up-to-date. This program is designed to cater

to musicians, music enthusiasts, and anyone in need of an organized system to

manage their musical instrument collection.

The proposed software system is expected to do the following functionality-

1. To provide a user friendly, Graphical User Interface (GUI) based

integrated and centralized environment for MIS activities.

2. The proposed system should maintain all the records, and should generate

the required reports and information when required.

3. To provide a graphical and user-friendly interface to interact with a

centralized database based on client-server architecture.


4. To identify the critical operation procedure and possibilities of

simplification using modern IT tools and practices.

In its current scope, the software enables user to retrieve and update the

information. Designed in Python. This software does not require much training

time for the users as it has a very easy and simple interface.

Despite the best effort of the developer, the following limitations and

functional boundaries are visible, which limits the scope of this application

software.

1. This software can store records and produce reports in pre-designed

format in soft copy. There is no facility yet to produce customized

reports. Only specified reports are covered.

2. Some application areas like importing/exporting of student list ,roll.no

etc. are not implemented in the project. It facilitates teachers to record

and student marks and roll.no

So far as future scope of the project is concerned, firstly it is open to any

modular expansion i.e. other modules or functions can be designed and

embedded to handle the user need in future. Any part of the software and

reports can be modified independently without much effort.


3. THEORETICAL BACKGROUND

Introduction

Python is a high-level scripting language which can be used for a wide variety

of text processing, system administration and internet-related tasks. Unlike

many similar languages, it’s core language is very small and easy to master,

while allowing the addition of modules to perform a virtually limitless variety

of tasks. Python is a true object-oriented language, and is available on a wide

variety of platforms. There’s even a python interpreter written entirely in Java,

further enhancing python’s position as an excellent solution for internet-based

problems.

Basics of Python

There are a few features of python which are different than other programming

languages, and which should be mentioned early on so that subsequent

examples don’t seem confusing. Further information on all of these features will

be provided later, when the topics are covered in depth. Python statements do

not need to end with a special character – the python interpreter knows that you

are done with an individual statement by the presence of a newline, which will

be generated when you press the “Return” key of your keyboard. If a statement

spans more than one line, the safest course of action is to use a backslash (\) at

the end of the line to let python know that you are going to continue the

statement on the next line;


you can continue using backslashes on additional continuation lines. (There

are situations where the backslashes are not needed which will be discussed

later.)

Python provides you with a certain level of freedom when composing a

program, but there are some rules which must always be obeyed. One of these

rules, which some people find very surprising, is that python uses indentation

(that is, the amount of white space before the statement itself) to indicate the

presence of loops, instead of using delimiters like curly braces ({}) or keywords

(like “begin” and “end”) as in many other languages. The amount of indentation

you use is not important, but it must be consistent within a given depth of a

loop, and statements which are not indented must begin in the first column.

Most python programmers prefer to use an editor like emacs, which

automatically provides consistent indentation; you will probably find it easier to

maintain your programs if you use consistent indentation in every loop, at all

depths, and an intelligent editor is very useful in achieving this.


4. SYSTEM IMPLEMENTATION

5.1 The Hardware used:

While developing the system, the used hardware are:

➢ Processor: Intel(R) Core(TM) i5-5200U CPU @ 2.20GHz

➢ RAM: 8GB

5.2 The Software used:

⮚ Microsoft Windows 11 as Operating System.

⮚ Python 3.8

⮚ MS-Word 2021 for documentation.


5. SYSTEM DESIGN & DEVELOPMENT

5.1 System Design:

The record accessing method in the Instrument Catalog program is based

on CSV (Comma Separated Values) files, which are widely supported and easy

to use. The file extension is .csv, allowing users to open and edit the data in

various software applications like Excel, Google Sheets, and other spreadsheet

tools. This ensures flexibility and accessibility across different platforms.

5.2 Input Output CODING:

The software project for student mark manager contains various forms along

with programming codes. Forms and their event coding are given below.
COMMANDS USED TO IMPORT DIFFERENT LIBRARIES IN THE

PROGRAM

import csv

Code:

import csv

#Add

def Add_records():

with open("Instrument_Catalogs.csv", "w", newline='') as f:

writer = csv.writer(f)

writer.writerow(["I_Name", "I_Genre", "I_Origin", "I_Timbre",

"I_Material", "I_Size", "I_Weight", "I_Price", "Famous_Artist",

"A_Genre", "A_Song"])

writer.writerow(["Violin", "Classical, Baroque", "Italy", "Bright, Warm",

"Wood (maple and spruce)", "Medium", "1.5 kg", "$500 - $10,000", "Itzhak

Perlman", "Classical", "Praeludium and Allegro"])

writer.writerow(["Electric Guitar", "Rock, Blues, Metal", "United States",

"Bright, Sharp", "Wood (usually maple or alder), metal", "Medium to Large",

"3.5 kg", "$200 - $3,000", "Jimi Hendrix", "Rock, Psychedelic", "Purple

Haze"])
writer.writerow(["Snare Drum", "Rock, Jazz, Marching", "Germany",

"Sharp, Crisp", "Wood (shell), Steel (hoop)", "Medium", "5 kg", "$100 -

$1,000", "Travis Barker", "Punk Rock, Alternative", "All the Small Things"])

writer.writerow(["Piano", "Classical, Jazz, Pop", "Italy", "Rich, Full,

Resonant", "Wood (typically spruce or maple), ivory (historically), steel",

"Large", "300 kg", "$1,000 - $100,000", "Ludwig van Beethoven", "Classical",

"Moonlight Sonata"])

writer.writerow(["Cello", "Classical, Pop, Jazz", "USA", "Warm,

Resonant, Deep", "Wood (spruce and maple)", "Large", "3.5 kg", "$2,000 -

$50,000", "Yo-Yo Ma", "Classical, World Music", "The Swan"])

Add_records()

print("The CSV File Instruments_Catalogs has been successfully created!!")

#append

def append_row():

with open("Instrument_Catalogs.csv", "a", newline='') as fa:

writer = csv.writer(fa)

while True:

I_Name = input("Enter Instrument Name: ")

I_Genre = input("Enter Instrument Genre: ")

I_Origin = input("Enter Instrument Origin: ")


I_Timbre = input("Enter Instrument Timbre: ")

I_Material = input("Enter Instrument Material: ")

I_Size = input("Enter Instrument Size: ")

I_Weight = input("Enter Instrument Weight: ")

I_Price = input("Enter Instrument Price: ")

Famous_Artist = input("Enter Famous Artist: ")

A_Genre = input("Enter Artist Genre: ")

A_Song = input("Enter Artist Song: ")

writer.writerow([I_Name, I_Genre, I_Origin, I_Timbre, I_Material,

I_Size, I_Weight, I_Price, Famous_Artist, A_Genre, A_Song])

ch = input("Do you want to continue adding records (y/n)?: ")

if ch.lower() == "n":

break

print("Records added successfully!!")

#search

def search_row():

valid_fields = ["I_Name", "I_Genre", "I_Origin", "I_Timbre", "I_Material",

"I_Size", "I_Weight", "I_Price", "Famous_Artist", "A_Genre", "A_Song"]

while True:
search_column = input("Enter the column to be searched from {',

'.join(valid_fields)}: ")

if search_column not in valid_fields:

print("Input Invalid (Column not found)")

return

search_input = input("Enter the value to be searched in column

'{search_column}': ")

found = False

with open("Instrument_Catalogs.csv", "r") as fr:

reader = csv.DictReader(fr)

for row in reader:

if row[search_column] == search_input:

print("Row found:", row)

found = True

break

if not found:

print("No rows found with that value.")

ch = input("Do you want to search again?(y/n): ")

if ch.lower() == 'n':

print("Exiting search.")

break
#delete

def delete_row():

while True:

with open("Instrument_Catalogs.csv", "r", newline='') as fr:

reader = list(csv.reader(fr))

row_to_delete = int(input("Enter the row number you want to delete

(starting from 0):

"))

if 0 <= row_to_delete < len(reader):

del reader[row_to_delete]

with open("Instrument_Catalogs.csv", "w", newline='') as fw:

writer = csv.writer(fw)

writer.writerows(reader)

print("Row deleted successfully!")

else:

print("Invalid row number.")

ch=input("Do you want to continue deleting records??(y/n):")

if ch in 'Nn':

break

else:

continue
#update

import csv

def update_record():

while True:

col = input("Enter the name of the column: ")

val = input(f"Enter the value of the {col} to identify row: ")

rows = []

with open("Instrument_Catalogs.csv", "r", newline='') as fr:

reader = csv.DictReader(fr)

fieldnames = reader.fieldnames

recs = list(reader)

found = False

for rec in recs:

if rec.get(col) == val:

print("Current row:", rec)

for row in rec:

if row != col:

new = input(f"Enter new value for '{row}' (or press Enter to

keep current value): ")


if new:

rec[row] = new

found = True

break

if not found:

print("No such row is available!!")

return

with open("Instrument_Catalogs.csv", "w", newline='') as fw:

writer = csv.DictWriter(fw, fieldnames=fieldnames)

writer.writeheader()

writer.writerows(recs)

print("The row updated successfully")

ch = input("Do you want to continue updating records (y/n)?: ")

if ch in 'Nn':

break

else:

pass
#select

import csv

def select_row(filename):

while True:

with open(filename, "r", newline='') as fr:

reader = list(csv.reader(fr))

row_to_select = int(input("Enter the row number you want to view

(starting from 0): "))

if 0 <= row_to_select < len(reader):

print(f"Selected Row: {reader[row_to_select]}")

else:

print("Invalid row number.")

ch = input("Do you want to continue selecting rows? (y/n): ")

if ch in 'Nn':

break

else:

pass
#main

def main_function():

while True:

print("_"*110)

print("\n!!!WELCOME!!!")

print("_"*110)

print("1.Append Records ")

print("2.Search a row ")

print("3.Delete a row ")

print("4.Update Records ")

print("5.Select a Row ")

print("6.Exit Program")

choice = input("Choose an Option (1-6): ")

if choice == '1':

append_row()

elif choice == '2':

search_row()

elif choice == '3':

delete_row()

elif choice == '4':

update_record()

elif choice == '5':


select_row("Instrument_Catalogs.csv")

elif choice == '6':

print("Exiting Program!!. Thank You for participating!!!")

print("=============================================

================================THANKYOU!!!

=========================================================

=============")

break

else:

print("Invalid Choice.\nPlease try again (if required)!!")

print(":("*80)

main_function()
Output:

1.APPEND

Create your account menu

2.SEARCH

3.DELETE
4.UPDATE:

5.SELECT:

6.EXIT PROGRAM :
5.3 Conclusion

The Instrument Catalog program is an indispensable tool for anyone looking to

manage a comprehensive collection of musical instruments efficiently. This

program offers a suite of features designed to streamline the process of

maintaining detailed and accurate records. Users can easily add, update, search,

delete, and view information about various instruments, making it an invaluable

resource for musicians, music enthusiasts, and inventory managers alike.

One of the key strengths of this program is its use of the CSV file format, which

ensures that data is easily accessible and compatible with a wide range of

applications. This flexibility allows users to manage their instrument data in the

software they are most comfortable with, be it Excel, Google Sheets, or other

spreadsheet tools.

As we navigate an era where technology continually shapes our daily lives, the

Instrument Catalog program stands out as a robust solution for managing

musical instrument records. It embodies the essence of efficiency and

convenience, providing users with a reliable tool to keep their catalogs

organized and accurate.

In the words of Johann Sebastian Bach, "Music is an agreeable harmony for the

honor of God and the permissible delights of the soul." With the Instrument
Catalog program, managing your musical instruments becomes as harmonious

and delightful as the music they produce.

6.USER MANUAL

6.1 How to install the Software:

Hardware Requirement-

♦ Intel Pentium/Celeron or similar processor based PC at Client/Server end.

♦ 512 MB RAM and 4GB HDD space (for Database) is desirable.

♦ Standard I/O devices like Keyboard and Mouse etc.

♦ Printer is required for hard-copy reports.

♦ Local Area Network(LAN) is required for Client-Server Installation

Software Requirement-

♦ Windows XP/Vista/7/8/8.1/10/11

♦ Python IDLE higher than version 3.5

♦ Pycharm Community edition 2018.3.1 or higher

Python installation
Step 1: Download Python

To start, go to python.org/downloads and then click on the button to download


the latest version of Python.
Step 2: Run the .exe file

Next, run the .exe file that you just downloaded, and then follow the installation
instructions.
Note that depending on your needs, you may also check the box to add Python

to the Path:

Add Python to PATH

7. References

In order to work on this project titled – Students Mark Manager , the

following books and literature are referred to by me during the various phases

of development of the project.

(3) Computer Science for class XII -by Sumita Arora

(4) CBSE Computer Science Class 12

(5) www.mycbseguide.com

Other than the above-mentioned books, the suggestions and supervision of my

teacher and my class experience also helped me to develop this software

project.

You might also like