Description
In short, if you're still using pdir2 for Python <3.5, install via pip install "pdir2>=0.3,<0.4".
pdir2 alternatives and similar packages
Based on the "RESTful API" category.
Alternatively, view pdir2 alternatives based on common mentions on social networks and blogs.
-
hug
A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation. -
connexion
Swagger/OpenAPI First framework for Python on top of Flask with automatic endpoint validation & OAuth2 support -
flasgger
Creates Swagger 2.0 API documentation for all your Flask views extracting specs from docstrings or referenced files -
apispec
A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification). -
Blueprint/Boilerplate For Python Projects
Blueprint/Boilerplate For Python Projects -
django-admin-interface
django-admin-interface is a customizable responsive admin interface, based on a modern flat theme, it lets you customize the admin title, logo and colors by the admin itself. Popup windows replaced by modals. -
bravado
Bravado is a Yelp maintained fork of digium/swagger-py for use with OpenAPI Specification version 2.0 -
Changelog CI
Changelog CI is a GitHub Action that generates changelog, prepends it to CHANGELOG.md file and commits it to a release pull request -
django-template
A flexible Django 1.4-1.9 project template with configurations for EC2, Heroku, App Engine, and Docker. -
Cilantropy
Cilantropy is a Python Package Manager interface created to provide an "easy-to-use" visual and also a command-line interface for Pythonistas.
Get performance insights in less than 4 minutes
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of pdir2 or a related project?
README
:warning: On master branch, pdir2's codebase is Python 3.5+, with annotations and mypy check. The Python 2 compatible version exists in the 0.3.x branch and will still be receiving bug fixes. All new features will be developed on master therefore is Python 3.5+ exclusive.
In short, if you're still using pdir2 for Python <3.5, install via pip install "pdir2>=0.3,<0.4"
.
pdir2: Pretty dir() printing with joy
Have you ever dreamed of a better output of dir()
? I do. So I created this.
Features
Attributes are grouped by types/functionalities, with beautiful colors.
Support color customization, here's how.
Support all platforms including Windows(Thanks to colorama).
Support ipython, ptpython, bpython and Jupyter Notebook! See wiki for details.
The return value of
pdir()
can still be used as a list of names.✨ Attribute searching
You can search for certain names with
.s()
or.search()
:Search is case-insensitive by default.
search(name, case_sensitive=True)
does case sensitive searching.:star2: Attribute filtering
properties
: Find properties/variables defined in the inspected object.methods
: Find methods/functions defined in the inspected object.public
: Find public attributes.own
: Find attributes that are not inherited from parent classes.These filters can be chained! Order does NOT matter.
For example, use
pdir(obj).public.own.methods
to find all public own methods.You can also call
search
on the returned results.See a complete example.
Install
Generic
pip install pdir2
About the name. I wanted to call it "pdir", but there's already one with this name on pypi. Mine is better, of course.
Fedora
dnf install python3-pdir2
--or--
dnf install python2-pdir2
Automatic Import
As a better alternative of dir()
, it's more convenient to automatically import
pdir2 when launching REPL. Luckily, Python provides a way to do this. In you .bashrc
(or .zshrc
), add this line:
export PYTHONSTARTUP=$HOME/.pythonstartup
Then, create .pythonstartup
in your home folder. Add one line:
import pdir
Next time you launch REPL, pdir()
is already there, Hooray!
Testing
Simply run pytest
, or use tox
if you like.
Developement
Clone the source, run make install_dev_packages
.
Don't forget to add proper type annotations,
if you're not sure what to do, check out the gen_type_info
section in tox.ini
.