A python module to read and write the Newick format
Project description
# python-newick
[![Build Status](https://travis-ci.org/glottobank/python-newick.svg?branch=master)](https://travis-ci.org/glottobank/python-newick)
[![codecov.io](https://codecov.io/github/glottobank/python-newick/coverage.svg?branch=master)](https://codecov.io/github/glottobank/python-newick?branch=master)
[![PyPI](https://badge.fury.io/py/newick.svg)](https://pypi.python.org/pypi/newick)
python package to read and write the
[Newick format](https://en.wikipedia.org/wiki/Newick_format).
## Reading Newick
- From a string:
```python
>>> from newick import loads
>>> trees = loads('(A,B,(C,D)E)F;')
>>> trees[0].name
u'F'
>>> [n.name for n in trees[0].descendants]
[u'A', u'B', u'E']
```
- From a `file`-like object:
```python
>>> import io
>>> from newick import load
>>> with io.open('fname', encoding='utf8') as fp:
... trees = load(fp)
```
- From a file name:
```python
>>> from newick import read
>>> trees = read('fname')
```
## Writing Newick
In parallel to the read operations there are three functions to serialize a single `Node` object or a `list` of `Node`
objects to Newick format:
- `dumps(trees) -> str`
- `dump(trees, fp)`
- `write(trees, 'fname')`
A tree may be assembled using the factory methods of the `Node` class:
- `Node.__init__`
- `Node.create`
- `Node.add_descendant`
[![Build Status](https://travis-ci.org/glottobank/python-newick.svg?branch=master)](https://travis-ci.org/glottobank/python-newick)
[![codecov.io](https://codecov.io/github/glottobank/python-newick/coverage.svg?branch=master)](https://codecov.io/github/glottobank/python-newick?branch=master)
[![PyPI](https://badge.fury.io/py/newick.svg)](https://pypi.python.org/pypi/newick)
python package to read and write the
[Newick format](https://en.wikipedia.org/wiki/Newick_format).
## Reading Newick
- From a string:
```python
>>> from newick import loads
>>> trees = loads('(A,B,(C,D)E)F;')
>>> trees[0].name
u'F'
>>> [n.name for n in trees[0].descendants]
[u'A', u'B', u'E']
```
- From a `file`-like object:
```python
>>> import io
>>> from newick import load
>>> with io.open('fname', encoding='utf8') as fp:
... trees = load(fp)
```
- From a file name:
```python
>>> from newick import read
>>> trees = read('fname')
```
## Writing Newick
In parallel to the read operations there are three functions to serialize a single `Node` object or a `list` of `Node`
objects to Newick format:
- `dumps(trees) -> str`
- `dump(trees, fp)`
- `write(trees, 'fname')`
A tree may be assembled using the factory methods of the `Node` class:
- `Node.__init__`
- `Node.create`
- `Node.add_descendant`
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
newick-0.9.0.tar.gz
(11.1 kB
view hashes)
Built Distribution
newick-0.9.0-py2.py3-none-any.whl
(10.6 kB
view hashes)
Close
Hashes for newick-0.9.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95fd041989815bc1813d0ca24098987c399c7fa63c588ec61e9c8f7477631202 |
|
MD5 | 1e1904b3c0ff5bfe687aa36ca7d962bb |
|
BLAKE2b-256 | b69147ed54f2dacdbb6743ede209a5d78c805debf017b4ea40f17f0243226812 |