python3, в тексте справки (int), что описываются дескрипторы данных? - PullRequest
0 голосов
/ 14 сентября 2018

Когда вы получаете строку справки для типов int, используя help (int). Самая последняя часть:

| ----------------------------------------------------------------------
|  Data descriptors defined here:
|  
|  denominator
|      the denominator of a rational number in lowest terms
|  
|  imag
|      the imaginary part of a complex number
|  
|  numerator
|      the numerator of a rational number in lowest terms
|  
|  real
|      the real part of a complex number

Итак, это атрибуты сложного типа и класса дроби, так почему они перечислены здесь относительно целых чисел. Является ли некоторый тип глобального дескриптора данных?

1 Ответ

0 голосов
/ 14 сентября 2018

Тот факт, что complex и fractions.Fraction имеют атрибуты с этими именами и значениями, не означает, что целые числа также не имеют таких атрибутов. Разные классы могут иметь одинаковые атрибуты:

>>> (5).denominator
1
>>> (5).imag
0
>>> (5).numerator
5
>>> (5).real
5

Они не какой-то универсальный атрибут или что-то в этом роде. Тип int просто реализует дескрипторы для этих атрибутов для взаимодействия с другими числовыми типами. В частности, они были реализованы , чтобы соответствовать PEP 3141 .

...