Skip to main content

A package of function created by and for The Coding Society, Panimalar Engineering College

Project description

Panimalar

A package for students of Panimalar Engineering College.

Table of Contents

Modules

The Panimalar package consists of the following modules:

rollno

This module provides functions to work with Panimalar Engineering College roll numbers.

  • isvalid(rollno) => boolean: Checks if a roll number is valid.
  • get_dept_code(rollno) => string: Retrieves the department code from a roll number.
  • get_dept(rollno) => string: Retrieves the department name from a roll number.
  • parse(rollno, required) => string (or) int: Parses specific details from a roll number based on the requirements.
  • get_year(rollno) => int: Retrieves the year of joining from a roll number.

cgpa

This module handles CGPA calculations for students.

Classes and Methods

Subject

This class stores the credit and grade point of a subject.

Properties:

  • credit: The credit value of the subject.
  • grade point: The grade point obtained in the subject.
Gpa

This class calculates the GPA (Grade Point Average) based on the subjects.

Methods:

  • addsubject(self, credit: int, grade_point: int): Adds a subject with its credit and grade point to the GPA calculation.
  • calc(self) -> float: Calculates and returns the GPA value.
  • display(self) -> None: Displays the subjects and their credit points along with the calculated GPA.
  • added(self) -> None: Notifies that a subject has been added to the GPA calculation.
  • removesubject(self, index: int) -> None: Removes a subject from the GPA calculation based on its index.
Cgpa

This class calculates the CGPA (Cumulative Grade Point Average) based on the GPAs of multiple semesters.

Methods:

  • calc(self): Calculates and returns the CGPA value.
  • display(self) -> None: Displays the semesters and their corresponding GPAs along with the calculated CGPA.
  • added(self) -> None: Notifies that a semester has been added to the CGPA calculation.
  • removesemester(self, index: int) -> None: Removes a semester from the CGPA calculation based on its index.

Details

  • Validate Roll Number: The isvalid(rollno) function can be used to validate whether a given roll number is in the correct format.
  • Parse Details from Roll Number: The parse(rollno, required) function allows extracting specific details from a roll number based on the requirements.

A valid Panimalar roll number follows the format: (YEAROFJOIN)YYYY-PEC-(DEPT)DD-(ROLLNO)XXXX

Example: 2021PECCB101

  • 2021: Year of Joining
  • PEC: Panimalar Engineering College
  • CB: Department (Computer Science and Business Systems)
  • 101: Roll Number of Student

Usage

  1. Install the package using pip: pip install panimalar
  2. Import the desired modules and classes into your Python script: from panimalar.rollno import isvalid, get_dept_code, parse from panimalar.cgpa import Gpa, Cgpa
  3. Use the functions and classes according to your requirements. Here's an example:
roll_number = "2021PECCB101"
if isvalid(roll_number):
    dept_code = get_dept_code(roll_number)
    print(f"Department code: {dept_code}")

    year_of_joining = parse(roll_number, "YEAROFJOIN")
    print(f"Year of Joining: {year_of_joining}")

Release Steps

To release a new version of the package, follow these steps:

  1. Update the version number in pyproject.toml to reflect any major changes, updates, or bug fixes.
  2. Add any new modules or functions to the pyproject.toml file.
  3. Include any necessary dependencies in the pyproject.toml file.
  4. Document the new functions or changes in the README.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

panimalar-1.0.1.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

panimalar-1.0.1-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file panimalar-1.0.1.tar.gz.

File metadata

  • Download URL: panimalar-1.0.1.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for panimalar-1.0.1.tar.gz
Algorithm Hash digest
SHA256 77f244b9fb454464226388c622b6503f4d16afda3a6660d420cafc164474cde9
MD5 c8ad769062f879905dae741a05ed340b
BLAKE2b-256 f0c3259b6556da1ce9d51df461e238d059e6e3f474690fe76409ab80fd870b15

See more details on using hashes here.

File details

Details for the file panimalar-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: panimalar-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for panimalar-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ee0d65a6db928b2df4031e23e72a6ca2b30e7a708e444b3097d95e70c55ca478
MD5 b1d92b86ecff6ce99b272e631860373b
BLAKE2b-256 347feeac892fd416b06a2878b1a40118af3610188b0d41f86f8d762d4a7cdbc0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page