Utility library. IO, maths, randomizations, misc.

## Project description

File handling, maths, randomization, miscellaneous.

INCLUDING:

* general maths (most functions support both scalars and list/array-likes)

** factorials

** fast sum of series 1,2,3,4,5 ... N

** number of sequences of N size taken from a set of K size

** number of places a sequence of length N can be subdivided

** round N to nearest power of B

** convert a power of B, N, to an exponent of B, such that B**E == N

** find common denominator

** find all integers that divide evenly into N

** linear/spline interpolation of a 1d series of values

** binary representation of a number

* spatial maths

** subclassable Grid type

** grid snapping and 'is-in-cell'

** polar/cartesian transform

** polar distance

** calculate triple of weights based on position in triangle

* randomization

** return true P% of the time

** weighted sampling from a set of items

** fill weighted boxes in a roughly even way

** randomly dispense contents of a box

** convert nested percentage weights to flat 0..1 weights

** dice roll (single, and iterative/infinite)

** chain iterator, which yields values while percentage chance of success

rolls succeed, and stops as soon as they fail.

Like OHRRPGCE 'chain attack/ chain %' option

* misc

** find numeric limits of data types (builtin types or simple numpy types)

** sort sequence according to template

** reverse of zip (flat sequence a,b,c,a,b,c,a,b,c -> a,b,c tuples)

** easily read every line or every byte of a file

** calculate minimum number of bits required to store a given integer.

** quickly set multiple attributes on an object

** Metadata class for easy management of metadata,

with yaml serialization support.

also available through git. run 'git clone git://repo.or.cz/pyion.git' to grab a copy :)

INCLUDING:

* general maths (most functions support both scalars and list/array-likes)

** factorials

** fast sum of series 1,2,3,4,5 ... N

** number of sequences of N size taken from a set of K size

** number of places a sequence of length N can be subdivided

** round N to nearest power of B

** convert a power of B, N, to an exponent of B, such that B**E == N

** find common denominator

** find all integers that divide evenly into N

** linear/spline interpolation of a 1d series of values

** binary representation of a number

* spatial maths

** subclassable Grid type

** grid snapping and 'is-in-cell'

** polar/cartesian transform

** polar distance

** calculate triple of weights based on position in triangle

* randomization

** return true P% of the time

** weighted sampling from a set of items

** fill weighted boxes in a roughly even way

** randomly dispense contents of a box

** convert nested percentage weights to flat 0..1 weights

** dice roll (single, and iterative/infinite)

** chain iterator, which yields values while percentage chance of success

rolls succeed, and stops as soon as they fail.

Like OHRRPGCE 'chain attack/ chain %' option

* misc

** find numeric limits of data types (builtin types or simple numpy types)

** sort sequence according to template

** reverse of zip (flat sequence a,b,c,a,b,c,a,b,c -> a,b,c tuples)

** easily read every line or every byte of a file

** calculate minimum number of bits required to store a given integer.

** quickly set multiple attributes on an object

** Metadata class for easy management of metadata,

with yaml serialization support.

also available through git. run 'git clone git://repo.or.cz/pyion.git' to grab a copy :)

## Project details

## Release history Release notifications

## Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help | File type | Python version | Upload date |
---|---|---|---|

pyion-0.02dev.tar.gz (171.5 kB) Copy SHA256 hash SHA256 | Source | None | Jan 1, 2009 |