[Python.NET] import String : Uses PythonNet with current Python
installation
f.kintzel
f.kintzel at internet-access.de
Mon Sep 27 10:19:59 CEST 2004
Hello,
I'm not shure why, but importing CLR-modules requires that the
top-module is imported first, then submodules of it.
Try the following :
import CLR
import CLR.System
from CLR.System import String as CLRString
foo = CLRString('bar')
print foo
--
<CLR.System.String object at 0x008FF7D0>
I guess that the first time you import String only CLR or CLR.System is
actually imported.
Kind regards,
Florian Kintzel
thane at magna-capital.com wrote:
> I'm not sure why, but copying the PythonNet DLLs (CLR.dll and
> Python.Runtime.dll) to a standard CPython installation directory, does
> not give the CPython "real" access to the CLR.
>
>
>
> Two observations:
>
> 1. The CLR modules don't load on the first try (see output
> below), and
>
> 2. Running modules that require the CLR will sometimes fail
> (I'll investigate this some more). I've written a .Net backend for
> matplotlib, which runs fine with the Python distribution from
> PythonNet (Brian's distribution), but it crashes when the DLLs are in
> the CPython distribution from Python.org. I'm stumped... could it be
> related to the "loading delay" above?
>
>
>
> Any ideas?
>
>
>
> --- Output from CPython with PythonNet DLLs in the directory --------
>
>
>
> C:\Python\Python2.3.3>python
>
> Python 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit (Intel)]
> on win32
>
> Type "help", "copyright", "credits" or "license" for more information.
>
>>>> import os
>
>>>> os.system('dir *.dll')
>
> Volume in drive C has no label.
>
> Volume Serial Number is 7CEC-BD8B
>
>
>
> Directory of C:\Python\Python2.3.3
>
>
>
> 09/08/2004 09:48 PM 2,560 CLR.dll
>
> 09/08/2004 09:47 PM 98,304 Python.Runtime.dll
>
> 12/18/2003 08:22 PM 974,915 python23.dll
>
> 3 File(s) 1,075,779 bytes
>
> 0 Dir(s) 13,137,387,520 bytes free
>
> 0
>
>>>> from CLR.System import String
>
> getattr: proxy
>
> getattr: dict
>
> getattr: __path__
>
> Traceback (most recent call last):
>
> File "<stdin>", line 1, in ?
>
> ImportError: No module named System
>
>>>> from CLR.System import String
>
>>>> mystr = String('fubar')
>
>>>> mystr
>
> <CLR.System.String object at 0x008E5D10>
>
>>>>
>
>
>
> Thane Plummer, Ph.D.
>
> CEO Magna Capital, LLC
>
> (520) 760-4957
>
> (520) 405-2277 (cell)
>
> thane at magna-capital.com <mailto:thane at magna-capital.com>
>
> www.magna-capital.com <http://www.magna-capital.com>
>
>
>
>
>
>------------------------------------------------------------------------
>
>_________________________________________________
>Python.NET mailing list - PythonDotNet at python.org
>http://mail.python.org/mailman/listinfo/pythondotnet
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/pythondotnet/attachments/20040927/1656e72d/attachment.html
More information about the PythonDotNet
mailing list