Name | happydata JSON |
Version |
0.1.0
JSON |
| download |
home_page | https://github.com/daqiancode/happydata |
Summary | data loading,writing, transforming without third party library |
upload_time | 2025-07-30 06:12:30 |
maintainer | None |
docs_url | None |
author | Daqian |
requires_python | >=3.12 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# happydata
happy data loading,writing, transforming without third party library
## Installation
```bash
pip install happydata
```
## Usage
```python
from happydata import *
import io
class User:
def __init__(self, name:str, age:int):
self.name = name
self.age = age
tmp_path = 'test_users.jsonl'
# jsonl
write_jsonl([User('name', 18), User('张三', 19)], tmp_path)
assert load_jsonl(tmp_path) == [{'name': 'name', 'age': 18}, {'name': '张三', 'age': 19}]
# jsonl.gz
records = load_jsonl_gz('test_users.jsonl.gz')
write_jsonl_gz(records, 'test_users.jsonl.gz')
# lines
for line in read_lines('test_users.jsonl'):
print(line)
write_lines(lines, 'test_users.jsonl')
# tar.gz
for item, f in read_tar_gz(tmp_path):
print(item.name)
bs= f.read()
write_tar_gz(records, {
'test.txt': io.BytesIO(b'hello'),
}, 'test.tar.gz')
# zip
for name, f in read_zip(tmp_path):
print(name)
bs = f.read()
write_zip({
'test.txt': io.BytesIO(b'hello'),
}, 'test.zip')
# dir
files = load_dir('test_dir')
# commands:
state,stdout,stderr = run('ls')
# transform:
groupby([{'name': 'name', 'age': 18}, {'name': '张三', 'age': 19}], 'name')
```
Raw data
{
"_id": null,
"home_page": "https://github.com/daqiancode/happydata",
"name": "happydata",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": null,
"author": "Daqian",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/93/45/50c93a071fca7dbc4e21ace10d9e7fa984a2fb5c706f46ba8cc78a0afa55/happydata-0.1.0.tar.gz",
"platform": "Independant",
"description": "# happydata\nhappy data loading,writing, transforming without third party library\n\n\n\n## Installation\n```bash\npip install happydata\n```\n\n## Usage\n```python\nfrom happydata import *\nimport io\n\nclass User:\n def __init__(self, name:str, age:int):\n self.name = name\n self.age = age\ntmp_path = 'test_users.jsonl'\n# jsonl\nwrite_jsonl([User('name', 18), User('\u5f20\u4e09', 19)], tmp_path)\nassert load_jsonl(tmp_path) == [{'name': 'name', 'age': 18}, {'name': '\u5f20\u4e09', 'age': 19}]\n\n# jsonl.gz\nrecords = load_jsonl_gz('test_users.jsonl.gz')\nwrite_jsonl_gz(records, 'test_users.jsonl.gz')\n# lines\nfor line in read_lines('test_users.jsonl'):\n print(line)\nwrite_lines(lines, 'test_users.jsonl')\n\n# tar.gz\nfor item, f in read_tar_gz(tmp_path):\n print(item.name)\n bs= f.read()\nwrite_tar_gz(records, {\n 'test.txt': io.BytesIO(b'hello'),\n }, 'test.tar.gz')\n\n# zip\nfor name, f in read_zip(tmp_path):\n print(name)\n bs = f.read()\nwrite_zip({\n 'test.txt': io.BytesIO(b'hello'),\n }, 'test.zip')\n\n# dir\nfiles = load_dir('test_dir')\n\n# commands:\nstate,stdout,stderr = run('ls')\n\n# transform:\ngroupby([{'name': 'name', 'age': 18}, {'name': '\u5f20\u4e09', 'age': 19}], 'name')\n\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "data loading,writing, transforming without third party library",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/daqiancode/happydata"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "510256645bd8f7f92ff27342426c8ecdb5cc52cbe3873900680e85d8d1464ccf",
"md5": "6def2cb5fbfd833deb59813b7256f2bb",
"sha256": "05612616a4e3dbf68e3fb8d2895908cdf8877683c87a48953c7354dece2007c6"
},
"downloads": -1,
"filename": "happydata-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6def2cb5fbfd833deb59813b7256f2bb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 6957,
"upload_time": "2025-07-30T06:12:29",
"upload_time_iso_8601": "2025-07-30T06:12:29.098903Z",
"url": "https://files.pythonhosted.org/packages/51/02/56645bd8f7f92ff27342426c8ecdb5cc52cbe3873900680e85d8d1464ccf/happydata-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "934550c93a071fca7dbc4e21ace10d9e7fa984a2fb5c706f46ba8cc78a0afa55",
"md5": "c98ef1e7e854b9d9b43f756356b78ccc",
"sha256": "d4664e3e04ea019ebcee92656849cbb6849353d4d844c18664cf51845e6310ae"
},
"downloads": -1,
"filename": "happydata-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "c98ef1e7e854b9d9b43f756356b78ccc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 6659,
"upload_time": "2025-07-30T06:12:30",
"upload_time_iso_8601": "2025-07-30T06:12:30.289803Z",
"url": "https://files.pythonhosted.org/packages/93/45/50c93a071fca7dbc4e21ace10d9e7fa984a2fb5c706f46ba8cc78a0afa55/happydata-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-30 06:12:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "daqiancode",
"github_project": "happydata",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "happydata"
}