Metadata-Version: 2.1
Name: plazy
Version: 0.1.3.1
Summary: Utilities for lazy Python developers
Home-page: https://github.com/kyzas/plazy
Author: kyzas
Author-email: kyznano@gmail.com
Maintainer: kyzas
Maintainer-email: kyznano@gmail.com
License: MIT
Download-URL: https://github.com/kyzas/plazy/tarball/master
Description: <img src='https://img.shields.io/pypi/l/plazy.svg'> <img src='https://codecov.io/gh/kyzas/plazy/branch/master/graph/badge.svg'> <img src='https://img.shields.io/pypi/pyversions/plazy.svg'> <img src='https://img.shields.io/pypi/v/plazy.svg'> <img src='https://img.shields.io/pypi/dm/plazy.svg'> <img src='https://img.shields.io/badge/code%20style-black-000000.svg'>
        
        # plazy
        Utilities for lazy Python developers
        
        # INSTALLATION
        
        ```
        pip install plazy
        ```
        
        # PLAZY FEATURES
        
        ## Unique list and string
        
        Plazy version: 0.1.3+
        
        Turn list or tuple into unique list/tuple, keep order or sort the list/tuple.
        
        ``` python
        import plazy
        
        if __name__ == "__main__":
            sample_t = (7, 3, 5, 3, 3, 7, 9)
            unique_t = plazy.unique(seq=sample_t) # (7, 3, 5, 9)
        
            sample_l = [7, 3, 5, 3, 3, 7, 9]
            unique_l = plazy.unique(seq=sample_l) # [7, 3, 5, 9]
        
            unique_rt = plazy.unique(seq=sample_t, sort=True, reverse=True) # (9, 7, 5, 3)
        ```
        
        ## Base64 encode and decode for string
        
        Plazy version: 0.1.3+
        
        Base64 encode and decode for string.
        
        ``` python
        import plazy
        
        if __name__ == "__main__":
            encoded_val = plazy.b64encode('plazy') # cGxhenk=
            encoded_val = plazy.b64encode('plazy', pretty=True) # cGxhenk => Note: this string cannot be decoded!
            original_val = plazy.b64decode('cGxhenk=') # plazy
        ```
        
        ## Random String
        
        Plazy version: 0.1.2+
        
        Generate random string.
        
        ``` python
        import plazy
        
        if __name__ == "__main__":
            rstring = plazy.random_string() # iVr3FY
            rstring = plazy.random_string(upper=False) # mzvn7b
            rstring = plazy.random_string(size=8) # XqVDuu5R
            rstring = plazy.random_string(size=6, digit=True, lower=False, upper=False) # 763099
            rstring = plazy.random_string(size=6, digit=False, lower=True, upper=False) # djzcch
            rstring = plazy.random_string(size=6, digit=False, lower=False, upper=True) # BGBMQN
        ```
        
        ## Read Text File
        
        Plazy version: 0.1.2+
        
        Read lines of text file, eliminate redundant characters of each line, skip the empty lines.
        
        ``` python
        import plazy
        
        if __name__ == "__main__":
            lines = plazy.read_txt(path='/home/video-list.txt')
            print(lines) # ['<line#1>', '<line#2>', '<line#3>', ...]
        ```
        
        ## List Files
        
        Plazy version: 0.1.1+
        
        List files recursively in directory.
        
        ``` python
        import plazy
        
        if __name__ == "__main__":
            files = plazy.list_files(root='images',
                                    filter_func=lambda x : True if x.endswith('.jpg') else False,
                                    is_include_root=False)
            print(files) # ['1.jpg', '2.jpg', '_sub_/4.jpg']
        ```
        
        ## Auto Assign
        
        Plazy version: 0.1.0+
        
        Assign attributes of class with the passed arguments automatically.
        
        ``` python
        import plazy
        
        class Cat(object):
            @plazy.auto_assign
            def __init__(self, name, owner='Kyzas'):
                pass
        
        if __name__ == "__main__":
            my_cat = Cat('Kittie')
            print(my_cat.name)      # Kittie
            print(my_cat.owner)     # Kyzas
        ```
        
        # CONTRIBUTING
        
        * Step 1. Fork on **dev** branch.
        * Step 2. Install **pre-commit** on the local dev environment.
        
        ```
        pip install pre-commit
        pre-commit install
        ```
        
        * Step 3. Write test case(s) for the new feature or the bug.
        * Step 4. Write code to pass the tests.
        * Step 5. Make sure that the new code passes all the pre-commmit conditions.
        
        ```
        pre-commit run -a
        ```
        
        * Step 6. Create pull request.
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4,
Description-Content-Type: text/markdown
