pyfileindex


Namepyfileindex JSON
Version 0.0.23 PyPI version JSON
download
home_page
Summarypyfileindex - pythonic file system index
upload_time2024-03-01 11:19:50
maintainer
docs_urlNone
author
requires_python>=3.8
licenseBSD 3-Clause License Copyright (c) 2019, Jan Janssen All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
keywords pyiron
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pyfileindex
PyFileIndex - pythonic file system index 

[![Python package](https://github.com/pyiron/pyfileindex/workflows/Python%20package/badge.svg)](https://github.com/pyiron/pyfileindex/actions)
[![Coverage Status](https://coveralls.io/repos/github/pyiron/pyfileindex/badge.svg?branch=main)](https://coveralls.io/github/pyiron/pyfileindex?branch=main)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/pyiron/pyfileindex/main?filepath=notebooks%2Fdemo.ipynb)

The pyfileindex helps to keep track of files in a specific directory, to monitor added files, modified files and deleted files. The module is compatible with Python 3.7 or later but restricted to Unix-like system - Windows is not supported. 

![Preview](pyfileindex.gif)

# Installation
The pyfileindex can either be installed via pip using:

    pip install pyfileindex

Or via anaconda from the conda-forge channel

    conda install -c conda-forge pyfileindex


# Usage 
Import pyfileindex:

    from pyfileindex import PyFileIndex 
    pfi = PyFileIndex(path='.')
    
Or you can filter for a specifc file extension: 

    def filter_function(file_name):
        return '.txt' in file_name
        
    pfi = PyFileIndex(path='.', filter_function=filter_function)

List files in the file system index: 

    pfi.dataframe 

Update file system index: 

    pfi.update()

And open a subdirectory using: 

    pfi.open(path='subdirectory')

For more details, take a look at the example notebook: https://github.com/pyiron/pyfileindex/blob/main/notebooks/demo.ipynb


# License
The pyfileindex is released under the BSD license https://github.com/pyiron/pyfileindex/blob/main/LICENSE . It is a spin-off of the pyiron project https://github.com/pyiron/pyiron therefore if you use the pyfileindex for your publication, please cite: 

    @article{pyiron-paper,
      title = {pyiron: An integrated development environment for computational materials science},
      journal = {Computational Materials Science},
      volume = {163},
      pages = {24 - 36},
      year = {2019},
      issn = {0927-0256},
      doi = {https://doi.org/10.1016/j.commatsci.2018.07.043},
      url = {http://www.sciencedirect.com/science/article/pii/S0927025618304786},
      author = {Jan Janssen and Sudarsan Surendralal and Yury Lysogorskiy and Mira Todorova and Tilmann Hickel and Ralf Drautz and Jörg Neugebauer},
      keywords = {Modelling workflow, Integrated development environment, Complex simulation protocols},
    }

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "pyfileindex",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "pyiron",
    "author": "",
    "author_email": "Jan Janssen <janssen@mpie.de>",
    "download_url": "https://files.pythonhosted.org/packages/ef/e2/f281e4817d028f4c1c3419c3fb11a126bdc0ca29a0bf648555dab108799b/pyfileindex-0.0.23.tar.gz",
    "platform": null,
    "description": "# pyfileindex\nPyFileIndex - pythonic file system index \n\n[![Python package](https://github.com/pyiron/pyfileindex/workflows/Python%20package/badge.svg)](https://github.com/pyiron/pyfileindex/actions)\n[![Coverage Status](https://coveralls.io/repos/github/pyiron/pyfileindex/badge.svg?branch=main)](https://coveralls.io/github/pyiron/pyfileindex?branch=main)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/pyiron/pyfileindex/main?filepath=notebooks%2Fdemo.ipynb)\n\nThe pyfileindex helps to keep track of files in a specific directory, to monitor added files, modified files and deleted files. The module is compatible with Python 3.7 or later but restricted to Unix-like system - Windows is not supported. \n\n![Preview](pyfileindex.gif)\n\n# Installation\nThe pyfileindex can either be installed via pip using:\n\n    pip install pyfileindex\n\nOr via anaconda from the conda-forge channel\n\n    conda install -c conda-forge pyfileindex\n\n\n# Usage \nImport pyfileindex:\n\n    from pyfileindex import PyFileIndex \n    pfi = PyFileIndex(path='.')\n    \nOr you can filter for a specifc file extension: \n\n    def filter_function(file_name):\n        return '.txt' in file_name\n        \n    pfi = PyFileIndex(path='.', filter_function=filter_function)\n\nList files in the file system index: \n\n    pfi.dataframe \n\nUpdate file system index: \n\n    pfi.update()\n\nAnd open a subdirectory using: \n\n    pfi.open(path='subdirectory')\n\nFor more details, take a look at the example notebook: https://github.com/pyiron/pyfileindex/blob/main/notebooks/demo.ipynb\n\n\n# License\nThe pyfileindex is released under the BSD license https://github.com/pyiron/pyfileindex/blob/main/LICENSE . It is a spin-off of the pyiron project https://github.com/pyiron/pyiron therefore if you use the pyfileindex for your publication, please cite: \n\n    @article{pyiron-paper,\n      title = {pyiron: An integrated development environment for computational materials science},\n      journal = {Computational Materials Science},\n      volume = {163},\n      pages = {24 - 36},\n      year = {2019},\n      issn = {0927-0256},\n      doi = {https://doi.org/10.1016/j.commatsci.2018.07.043},\n      url = {http://www.sciencedirect.com/science/article/pii/S0927025618304786},\n      author = {Jan Janssen and Sudarsan Surendralal and Yury Lysogorskiy and Mira Todorova and Tilmann Hickel and Ralf Drautz and J\u00f6rg Neugebauer},\n      keywords = {Modelling workflow, Integrated development environment, Complex simulation protocols},\n    }\n",
    "bugtrack_url": null,
    "license": "BSD 3-Clause License  Copyright (c) 2019, Jan Janssen All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.  * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.  * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ",
    "summary": "pyfileindex - pythonic file system index",
    "version": "0.0.23",
    "project_urls": {
        "Documentation": "https://github.com/pyiron/pyfileindex",
        "Homepage": "https://github.com/pyiron/pyfileindex",
        "Repository": "https://github.com/pyiron/pyfileindex"
    },
    "split_keywords": [
        "pyiron"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc6ee7c4a1f96140606a0e3d33c66864f722e3f89c0debfcd0034e2dd3ca50f4",
                "md5": "b0cf62a6eb0f2e1520d7721eb2075af7",
                "sha256": "3d251f2243119ea89d177497acf6fd1e7ca3e3ccfab6b1f9b0019f91b81299fd"
            },
            "downloads": -1,
            "filename": "pyfileindex-0.0.23-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b0cf62a6eb0f2e1520d7721eb2075af7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 13670,
            "upload_time": "2024-03-01T11:19:48",
            "upload_time_iso_8601": "2024-03-01T11:19:48.520817Z",
            "url": "https://files.pythonhosted.org/packages/fc/6e/e7c4a1f96140606a0e3d33c66864f722e3f89c0debfcd0034e2dd3ca50f4/pyfileindex-0.0.23-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "efe2f281e4817d028f4c1c3419c3fb11a126bdc0ca29a0bf648555dab108799b",
                "md5": "ab06ff62b7026c01e64f3c0faa6dd639",
                "sha256": "2d27ff6030f6bc0ffab501db49728ead0e0462614befc882b5addc3f32411796"
            },
            "downloads": -1,
            "filename": "pyfileindex-0.0.23.tar.gz",
            "has_sig": false,
            "md5_digest": "ab06ff62b7026c01e64f3c0faa6dd639",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 8136,
            "upload_time": "2024-03-01T11:19:50",
            "upload_time_iso_8601": "2024-03-01T11:19:50.940648Z",
            "url": "https://files.pythonhosted.org/packages/ef/e2/f281e4817d028f4c1c3419c3fb11a126bdc0ca29a0bf648555dab108799b/pyfileindex-0.0.23.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-01 11:19:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pyiron",
    "github_project": "pyfileindex",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyfileindex"
}
        
Elapsed time: 0.19408s