inpsPyPI 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: inpsPyPI
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: PyPI package designed to make development in Python easier.
|
|
5
|
+
Project-URL: Homepage, https://github.com/isaiahnoelpulidosalazar/inpsPyPI
|
|
6
|
+
Author-email: Isaiah Noel Pulido Salazar <isaiahnoelpulidosalazar@gmail.com>
|
|
7
|
+
License-File: LICENSE
|
|
8
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
9
|
+
Classifier: Operating System :: OS Independent
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Requires-Python: >=3.10
|
|
12
|
+
Requires-Dist: openpyxl
|
|
13
|
+
Requires-Dist: unidecode
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
|
|
16
|
+
# inpsPyPI
|
|
17
|
+
|
|
18
|
+
**inpsPyPI** A PyPI package for Python 3.10+ that provides useful tools for data conversion and validation, a custom EasySQL class for simplified SQLite operations, a custom excel file handler, and a custom file IO handler..
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Features
|
|
23
|
+
|
|
24
|
+
`inpsPyPI` contains several distinct modules to help keep your codebase clean and readable:
|
|
25
|
+
|
|
26
|
+
### Validation (`Check`)
|
|
27
|
+
A robust validation class to simplify standard string and format checks.
|
|
28
|
+
- Email formatting and customizable domain validation.
|
|
29
|
+
- Validates Philippine mobile numbers (+639 / 09).
|
|
30
|
+
- Check for spaces, symbols, and pure numerical strings.
|
|
31
|
+
|
|
32
|
+
### Cryptography (`Cipher`)
|
|
33
|
+
A basic cryptography class to implement classic cipher techniques.
|
|
34
|
+
- Transposition Cipher
|
|
35
|
+
- Giovanni Cipher
|
|
36
|
+
- Keyword Cipher
|
|
37
|
+
- Caesar Cipher
|
|
38
|
+
|
|
39
|
+
### Data Conversion (`Convert`)
|
|
40
|
+
Effortless type casting and data encoding.
|
|
41
|
+
- Hex, Binary, and Base64 encoding/decoding.
|
|
42
|
+
- String reversal and byte-array conversions.
|
|
43
|
+
- Quick casting for Int, Float, Double, and Long.
|
|
44
|
+
|
|
45
|
+
### Data Structures
|
|
46
|
+
Custom implementations for improved data manipulation.
|
|
47
|
+
- **`Dictionarily`**: An enhanced Dictionary object with built-in sorting (alphabetical and numerical-first).
|
|
48
|
+
- **`Memory`**: A clean, object-oriented list/array wrapper to handle storage, indexing, and removal.
|
|
49
|
+
- **`Stackily`**: A classic Stack implementation (`push`, `pop`, `peek`, `is_empty`, `size`).
|
|
50
|
+
- **`Node`**: A lightweight binary tree node implementation.
|
|
51
|
+
|
|
52
|
+
### Database Management (`EasySQL`)
|
|
53
|
+
A simplified wrapper around Python's built-in `sqlite3`.
|
|
54
|
+
- Create tables with ease by passing lists of dictionaries.
|
|
55
|
+
- Insert, delete, and clear records directly via Python dictionaries.
|
|
56
|
+
- Fetch and print table values seamlessly.
|
|
57
|
+
|
|
58
|
+
### Excel Operations
|
|
59
|
+
A wrapper for `openpyxl` allowing for extremely fast Excel file data manipulation.
|
|
60
|
+
- Read and write to specific columns across single or multiple sheets.
|
|
61
|
+
- Skip header rows easily using `skip_rows`.
|
|
62
|
+
- Zero-hassle reading/writing to entire column letters (e.g., Column 'A').
|
|
63
|
+
|
|
64
|
+
### File Handling (`SimpleFileHandler`)
|
|
65
|
+
Static methods to rapidly `read()`, `write()`, and `append()` to text files using `utf-8` encoding.
|
|
66
|
+
|
|
67
|
+
### Sorting Algorithms
|
|
68
|
+
A massive suite of sorting algorithms available as quick plug-and-play functions.
|
|
69
|
+
- Quick Sort, Merge Sort, Heap Sort, Selection Sort, Insertion Sort, Bubble Sort.
|
|
70
|
+
- Advanced/Niche Sorts: Tim Sort, Intro Sort, Cocktail Shaker Sort, Shell Sort, Pigeonhole Sort, Bead Sort, and even Bogo Sort!
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Installation
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
pip install inpsPyPI
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Dependencies
|
|
81
|
+
The package largely uses Python's standard library (e.g., `sqlite3`, `math`, `re`, `base64`). However, the Excel operations module requires:
|
|
82
|
+
- `openpyxl`
|
|
83
|
+
- `unidecode`
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Quick Usage Examples
|
|
88
|
+
|
|
89
|
+
### 1. Simple SQLite Database Queries (`EasySQL`)
|
|
90
|
+
```python
|
|
91
|
+
from inpsPyPI import EasySQL
|
|
92
|
+
|
|
93
|
+
db = EasySQL("my_database")
|
|
94
|
+
|
|
95
|
+
# Create a database table
|
|
96
|
+
db.create_table("users", {
|
|
97
|
+
"id": "INTEGER PRIMARY KEY",
|
|
98
|
+
"name": "TEXT",
|
|
99
|
+
"age": "INTEGER"
|
|
100
|
+
})
|
|
101
|
+
|
|
102
|
+
# Insert data
|
|
103
|
+
db.insert_to_table("users", {"id": 1, "name": "Alice", "age": 28})
|
|
104
|
+
|
|
105
|
+
# Fetch values
|
|
106
|
+
records = db.get_table_values("users")
|
|
107
|
+
print(records)
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### 2. Validating Phone Numbers & Emails (`Check`)
|
|
111
|
+
```python
|
|
112
|
+
from inpsPyPI import Check
|
|
113
|
+
|
|
114
|
+
# Validate Philippine Phone Numbers
|
|
115
|
+
is_valid = Check.is_a_valid_philippine_mobile_number("+639123456789")
|
|
116
|
+
print(is_valid) # True
|
|
117
|
+
|
|
118
|
+
# Validate Emails with strict domain rules
|
|
119
|
+
Check.Email.add_valid_domain_name("gmail")
|
|
120
|
+
Check.Email.add_valid_domain_extension("com")
|
|
121
|
+
print(Check.Email.is_valid("user@gmail.com")) # True
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### 3. File Handling (`SimpleFileHandler`)
|
|
125
|
+
```python
|
|
126
|
+
from inpsPyPI import SimpleFileHandler
|
|
127
|
+
|
|
128
|
+
# Write, Append, and Read
|
|
129
|
+
SimpleFileHandler.write("log.txt", "Process started.\n")
|
|
130
|
+
SimpleFileHandler.append("log.txt", "Process finished.\n")
|
|
131
|
+
|
|
132
|
+
print(SimpleFileHandler.read("log.txt"))
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### 4. Text Encryption (`Cipher`)
|
|
136
|
+
```python
|
|
137
|
+
from inpsPyPI import Cipher
|
|
138
|
+
|
|
139
|
+
encrypted = Cipher.caesar_cipher("HELLO WORLD", shift=3)
|
|
140
|
+
print(encrypted) # KHOOR ZRUOG
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### 5. Sorting Array Data
|
|
144
|
+
```python
|
|
145
|
+
from inpsPyPI import quicksort, merge_sort
|
|
146
|
+
|
|
147
|
+
array = [5, 2, 9, 1, 5, 6]
|
|
148
|
+
print(quicksort(array)) #[1, 2, 5, 5, 6, 9]
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## Contributing
|
|
154
|
+
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
|
|
155
|
+
|
|
156
|
+
## License
|
|
157
|
+
[MIT](https://choosealicense.com/licenses/mit/)
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
inpspypi-1.0.0.dist-info/METADATA,sha256=x0n7OC4Xqp8G9BjhALp5_ct213K_Zyp-vwXVjs7A3kM,4907
|
|
2
|
+
inpspypi-1.0.0.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
|
|
3
|
+
inpspypi-1.0.0.dist-info/licenses/LICENSE,sha256=2k8mY-TU6ajn5jW9nuhA3dOsSAf1Z-KRs_Qd0QDfeDA,1083
|
|
4
|
+
inpspypi-1.0.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Isaiah Noel Pulido Salazar
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|