代码之家  ›  专栏  ›  技术社区  ›  politinsa

复数的“j”后缀是如何工作的?我可以自己做后缀吗?

  •  2
  • politinsa  · 技术社区  · 7 年前

    我知道什么是复数,它们是如何计算的,但是 巨蟒怎么做的 知道 只要把一个 j 数字之后?

    >>> j
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'j' is not defined
    >>> 1*j
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'j' is not defined
    >>> 1j
    1j
    >>> 1j**2
    (-1+0j)
    

    我能自己做个后缀吗? p (完全肯定)?

    我能做点像这样的工作吗?

    >>> ... some weird stuff here ...
    >>> p
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'p' is not defined
    >>> 1*p
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'p' is not defined
    >>> -1p
    1p
    >>> 0p
    1p
    >>> 
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   gilch    7 年前

    e 1e10 j

    >>> class StrictlyPositive:
        def __rmatmul__(self, number):
            return abs(number)
    
    
    >>> p = StrictlyPositive()
    >>> -1@p
    1
    

    abs