Как различить разные типы NaN-плавающих в Python

Я пишу код Python 2.6, который взаимодействует сNI TestStand 4.2 через COM в Windows. Я хочу сделать значение "NAN" для переменной, но если я передам егоfloat('nan'), TestStand отображает это какIND.

Очевидно, TestStand различает значения «IND» и «NAN» с плавающей запятой. В соответствии сСправка по TestStand:

IND соответствуетСигнализация NaN в Visual C ++, в то время какNAN соответствуетQuietNaN

Это означает, что Pythonfloat('nan') эффективноСигнализация NaN когда прошло через COM. Однако из того, что я читал оСигнализация NaN, Кажется, чтоСигнализация NaN немного "экзотично" иТихий NaN это ваш "обычный" NaN. Поэтому я сомневаюсь, что Python будет проходитьСигнализация NaN через COM.Как я могу узнать, если Pythonfloat('nan') передается через COM какСигнализация NaN или жеТихий NaN, или, может бытьнеопределенный?

Есть ли способ сделатьСигнализация NaN противQuietNaN или женеопределенный в Python, при взаимодействии с другими языками? (С помощьюctypes возможно?) Я предполагаю, что это будет решение для конкретной платформы, и я бы согласился с этим в этом случае.

Обновить: В редакторе последовательностей TestStand я попытался создать две переменные, одна из которых была установлена ​​наNAN а другой установлен наIND, Затем я сохранил его в файл. Затем я открыл файл и прочитал каждую переменную, используя Python. В обоих случаях Python читает их какnan плавать.

Ответы на вопрос(4)

Ваш ответ на вопрос