Skip to main content
File added late

1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.

pyIDL
# Python bindings for IDL, based on Andrew McMurry's python-IDL
# Requires ITT's IDL and numarray
# Download pyIDL source tarfile
# Installation

unzup and unpack the gzipped tar archive
$ tar -xvzf pyIDL-0.6.tgz

set environment variables
(paths will depend on IDL installation and platform)
$ export IDL_VERSION = '6.4'
$ export IDL_INCDIR = '/itt/idl/external/include'
$ export IDL_BINDIR = '/itt/idl/bin/bin.linux.x86'
$ export X11_LIBDIR = '/usr/lib/' (linux only)

install the package
$ python setup.py build
$ python setup.py install

(alternatively, a Makefile is included)

# Documentation

import the idl class
>>> from pyIDL import idl

instantiate the idl class
>>> ri = idl()

get help
>>> print ri.doc()
Python-IDL bindings
eval(command):
execute an IDL command
get(name,[array,allowNone]):
fetch a variable from IDL
put(name,value,[array,type,allowNone]):
push a variable to IDL
who([name,local,stdout]):
print/return the IDL/local variables
help([name]):
print the IDL help message (for a variable)
delete(name):
destroy selected IDL variables
map([name]):
get the IDL data type mapping
prompt():
an interactive IDL session
_print(value):
print using the IDL print command

push python variables into IDL and interact with IDL scripting language
>>> from numarray import *
>>> x = []
>>> for i in range(21): x.append(i*pi/10)
...
>>> ri.put('x',x)
>>> ri.eval('y = sin(x)')
>>> ri.eval('plot, x,y')

use the interactive prompt
>>> ri.prompt()
IDL interface:
% At $MAIN$
X DOUBLE = Array[21]
Y DOUBLE = Array[21]
Compiled Procedures:
$MAIN$

Compiled Functions:

IDL> IF x[0] LT 1 $
IDL> THEN print, x
0.0000000 0.31415927 0.62831853 0.94247780 1.2566371
1.5707963 1.8849556 2.1991149 2.5132741 2.8274334
3.1415927 3.4557519 3.7699112 4.0840704 4.3982297
4.7123890 5.0265482 5.3407075 5.6548668 5.9690260
6.2831853
IDL> exit

check variables in IDL session
>>> ri.who().keys()
['Y', 'X']
>>> ri.who('y')
[0.0, 0.3090169943749474, 0.58778525229247314, 0.80901699437494745,
0.95105651629515353, 1.0, 0.95105651629515364, 0.80901699437494745,
0.58778525229247325, 0.30901699437494751, 1.2246063538223773e-16,
-0.3090169943749469, -0.58778525229247303, -0.80901699437494734,
-0.95105651629515353, -1.0, -0.95105651629515364, -0.80901699437494756,
-0.58778525229247336, -0.30901699437494762, -2.4492127076447545e-16]

get variables back into python from IDL
>>> sinx = ri.get('y')

use shortcuts for put, eval, and get
>>> ri.z = 0.5
>>> ri('print, z')
0.50000000
>>> ri.z + 1
1.5

delete variables from IDL
>>> ri.delete('x')
>>> ri.delete('y')

use IDL function/procedure directly from python
>>> ri.sin(x)
[0.0, 0.3090169943749474, 0.58778525229247314, 0.80901699437494745,
0.95105651629515353, 1.0, 0.95105651629515364, 0.80901699437494745,
0.58778525229247325, 0.30901699437494751, 1.2246063538223773e-16,
-0.3090169943749469, -0.58778525229247303, -0.80901699437494734,
-0.95105651629515353, -1.0, -0.95105651629515364, -0.80901699437494756,
-0.58778525229247336, -0.30901699437494762, -2.4492127076447545e-16]

# Versions

0.6: 07/18/07
added support for idl_6.4
fixed boolean support in direct IDL function/procedure calls
0.5: 04/18/07
fixed support for python2.5
0.4.1: 12/01/06
fixed support for mac os
0.4: 10/06/06
added support for idl_6.3
improved support for NumPy
removed dependency on Numeric
0.3: 06/09/06
improved support for Numeric
added _print
extended examples
0.2: 05/19/06
support for 64-bit platforms
shortcuts for put, get, eval
access IDL functions/procedures from python
added examples directory
0.1: 06/21/05
initial; python bindings for RSI's IDL
interactive IDL prompt

Release files for pyIDL 0.6

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

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for pyIDL 0.6
File Size Uploaded
pyIDL-0.6.tgz 34.6 kB Details

Release files / pyIDL-0.6.tgz

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL pyIDL-0.6.tgz
Size 34.6 kB
Tags Source
SHA-256 checksum
How to use checksums
70f953c8910720ced8c961543bdb72c63847c6b10c0888a541dc63e638be9912
BLAKE2b-256 checksum
How to use checksums
05c487d87d91a439cb5c56503964af1eb905b7cecaaf550a7b17058cb880eaa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.6 This release

1 release file

0.5

0.4

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