Skip to main content
PyPI:

https://pypi.python.org/pypi/astor

Documentation:

http://astor.rtfd.org/

Source:

https://github.com/berkerpeksag/astor

License:

3-clause BSD

Build status:
Travis CI

astor is designed to allow easy manipulation of Python source via the AST.

There are some other similar libraries, but astor focuses on the following areas:

  • Round-trip an AST back to Python [1]:

    • Modified AST doesn’t need linenumbers, ctx, etc. or otherwise be directly compileable for the round-trip to work.

    • Easy to read generated code as, well, code

    • Can round-trip two different source trees to compare for functional differences, using the astor.rtrip tool (for example, after PEP8 edits).

  • Dump pretty-printing of AST

    • Harder to read than round-tripped code, but more accurate to figure out what is going on.

    • Easier to read than dump from built-in AST module

  • Non-recursive treewalk

    • Sometimes you want a recursive treewalk (and astor supports that, starting at any node on the tree), but sometimes you don’t need to do that. astor doesn’t require you to explicitly visit sub-nodes unless you want to:

    • You can add code that executes before a node’s children are visited, and/or

    • You can add code that executes after a node’s children are visited, and/or

    • You can add code that executes and keeps the node’s children from being visited (and optionally visit them yourself via a recursive call)

    • Write functions to access the tree based on object names and/or attribute names

    • Enjoy easy access to parent node(s) for tree rewriting

Release files for astor 0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for astor 0.6
File Size Uploaded
astor-0.6.tar.gz 28.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for astor 0.6
File Interpreter ABI Platform
astor-0.6-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 55.2 kB

Release files / astor-0.6.tar.gz

Download URL astor-0.6.tar.gz
Size 28.7 kB
Tags Source
SHA-256 checksum
How to use checksums
175ec395cde36aa0178c5a3120d03954c65d1ef4bb19ec4aa30e9d7a7cc426c4
BLAKE2b-256 checksum
How to use checksums
06bd0074f80c355aba34884be1887bfb67ca97b8cebbe46eac749d2c9719d33d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / astor-0.6-py2.py3-none-any.whl

Download URL astor-0.6-py2.py3-none-any.whl
Size 26.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
5b5d375c4e3d2d0f52fcfe0128bc064d928f36fe622b52e4127a631803fbe2ab
BLAKE2b-256 checksum
How to use checksums
6932e8a3285c0be9ce7ef42bfa302b995109036994713344b6baeed88bb12146
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

0.8.1

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

This release

0.6 This release

2 release files

0.5

2 release files

0.4.1

2 release files

0.4

2 release files

0.3

1 release file

0.2.1

1 release file

0.2

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page