An easy way to manage file creation.
Project description
Ensure File
An easy way to manage file creation
Example usage:
from ensure_file import ensure_file as ef
# This will create a file in the user directory under the `.example` folder
# if the file doesn't already exist. If the file does exist, nothing happens.
# Along with that, it will return true if a file is created, and false if
# nothing happens. This applies to everything else going forward.
ef("~/.example/foo.txt")
# Using the `default_value` parameter, you can set the default value to be
# written to the file. If the file already exists, nothing happens.
import json
ef("./bar.json", default_value=json.dumps({
"foo": "bar"
}))
# If you want to create a folder, you can set the `folder` parameter to true.
ef("/tmp/foo", folder=True)
# If there is already a folder with the same name as a file you want to create,
# the folder will be deleted and overwritten. This can be disabled by setting
# the `auto_correct_type` to false. In this function call, nothing would happen
# because of the folder created on the previous line.
ef("/tmp/foo", folder=False, auto_correct_type=False)
# If you want to not actually create any files or folders and instead throw an
# error if a file or folder doesn't exist, you can easily do so by setting the
# `throw_error` parameter to true. By default, this will also throw an error
# if the file or folder is the wrong type, such as checking if the file you're
# checking has the same name as a folder in the same directory. The type
# checking can be disabled by setting the `throw_check_type` parameter to
# false.
try:
ef("./some/file.css", folder=False, throw_error=True)
print("The file exists!")
except FileNotFoundError:
print("The file doesn't exist!")
except FileExistsError:
print("A folder exists where there should be a file!")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ensure_file-1.0.0.tar.gz
(14.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ensure_file-1.0.0.tar.gz.
File metadata
- Download URL: ensure_file-1.0.0.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d6f319624a620129cdcc27b6e11c20babcf0529a2bec9686750e813396bf4ec
|
|
| MD5 |
01b51ff1d4f039501f287bddc6f3b91e
|
|
| BLAKE2b-256 |
6b720938f6ad1fcdd1ff23a83a0528dbe52067c0bab6efdbcc863319051c569f
|
File details
Details for the file ensure_file-1.0.0-py3-none-any.whl.
File metadata
- Download URL: ensure_file-1.0.0-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee829f3dc397a35714daf1fefe1ea8e2e142dde1deb8f4f3b2d539beec229194
|
|
| MD5 |
5a0e12d1e709c7955807e5a2d15e1801
|
|
| BLAKE2b-256 |
627ce7c862eae13146cd3d4988646e2ace4295cf3d19f2421f99dd8f4df0e0ae
|