-
Notifications
You must be signed in to change notification settings - Fork 767
Open
Description
Environment
- Pythonnet version: 3.0.3
- Python version: 3.12
- Operating System: Windows
- .NET Runtime: 4.8
Details
- Describe what you were trying to get done.
We have python embedded in C# and are putting into scope objects that have Nullable<Decimal> properties and running (user provided python) code which tests for null(None). This fails when the property has a value and we compare the value to None using the == and != operators. It appears to work when we use the pythonic syntax not x or x is not None. We have upgraded from 2.5.2 to 3.0.3, also went from from Python 3.8 to 3.12. This code worked in previous versions.
## This does not work
x = None
print(x == None)
x = System.Decimal(1.23)
print(x == None)
## This works
x = None
print(not x)
x = System.Decimal(1.23)
print(not x)
## This also works
x = None
print(x is not None)
x = System.Decimal(1.23)
print(x is not None)- If there was a crash, please include the traceback here.
True
No method matches given arguments for Decimal.op_Equality: (<class 'NoneType'>) File "<string>", line 5, in <module>Metadata
Metadata
Assignees
Labels
No labels