Sorry for starting a new thread if redundant. I have been a long time user of PythonNet and suddenly I am having an intermittent failure that I can't diagnose,
PythonNet == 2.4.0.dev0 from pypi in Conda Python == 3.7.6 from conda main channel msvc 2019 I am using the following repository: https://github.com/mikofski/pv.net When I try to import pv.SolarPosition I get the following error: ImportError: cannot import name 'SolarPosition' from 'pv' (unknown location) I've tried it a couple of ways: 1. add reference to assembly name, doesn't work >>> import clr >>> assy_path = "C:\\Users\\mikofski\\source\\repos\\pv.net\\bin\\pv.dll" >>> assy = clr.AddReference(assy_path) >>> import pv >>> pv <module 'pv' (namespace)> >>> pv.SolarPosition AttributeError: module 'pv' has no attribute 'SolarPosition' >>> from pv import SolarPosition ImportError: cannot import name 'SolarPosition' from 'pv' (unknown location) 2. add assembly path to PYTHONPATH or sys.path, neither works >>> import sys >>> assy_path = "C:\\Users\\mikm\\source\\repos\\pv.net\\bin" >>> sys.path.append(assy_path) >>> import clr >>> assy = clr.AddReference("pv") >>> import pv >>> pv <module 'pv' (namespace)> >>> pv.SolarPosition AttributeError: module 'pv' has no attribute 'SolarPosition' >>> from pv import SolarPosition ImportError: cannot import name 'SolarPosition' from 'pv' (unknown location) 3. import from clr, always works >>> import clr >>> assy_path = "C:\\Users\\mikofski\\source\\repos\\pv.net\\bin\\pv.dll" >>> assy = clr.AddReference(assy_path) >>> from clr import pv >>> pv <module 'pv' (namespace)> >>> pv.SolarPosition pv.SolarPosition >>> dates = ["19900101T12:30:00", "19900102T12:30:00", "19900103T12:30:00", >>> "19900104T12:30:00"] >>> pv.SolarPosition(dates, 32.1, -121.0) 19900101T12:30:00 --> 1/1/1990 12:30 PM 19900102T12:30:00 --> 1/2/1990 12:30 PM 19900103T12:30:00 --> 1/3/1990 12:30 PM 19900104T12:30:00 --> 1/4/1990 12:30 PM 01/01/1990 12:30:00 --> 1.00 02/01/1990 12:30:00 --> 2.00 03/01/1990 12:30:00 --> 3.00 04/01/1990 12:30:00 --> 4.00 1.00 --> 0 2.00 --> 0.01721421 3.00 --> 0.03442841 4.00 --> 0.05164262 Out[35]: <pv.SolarPosition at 0x173cdd71c88> Even though I still can't import SolarPosition from pv at least call pv.SolarPosition. Weirdly, somehow if I import some other assemblies, which sometimes works, or if I keep trying long enough, suddenly it works, and I can import SolarPosition from pv using method 1 or 2. I don't know why, it's not repeatable. I recently made changes to my visual studio configuration, I only have build tools for 2015, visual studio 2017, and visual studio 2019. I am building using the makefile with visual studio 2019. I have tried compiling with either 2015 or 2017, but it doesn't seem to matter. I am using the native x64 environment. Also, maybe this matters, I started this project in visual studio 2019 as a .net core 3.1 project, and I noticed that it doesn't have AssemblyInfo.cs or a very big csproj file, but since I'm compiling from the command line using csc in the Makefile (see repo) I didn't think that would matter. Also, I tried an older project that I started using .Net Framework-4.5 and it also seems to work intermittently, inconsistently. My suspicion is that I somehow screwed up my .NET configuration, but not sure how or what. Anyway, if anyone has ever encountered this, or has any ideas, please let me know. I'm going a little crazy. thanks, Mark _______________________________________________ PythonNet mailing list -- pythonnet@python.org To unsubscribe send an email to pythonnet-le...@python.org https://mail.python.org/mailman3/lists/pythonnet.python.org/