Python tilde operatörü | Netgez.com
SORU
29 Kasım 2011, Salı


Python tilde operatörü

Python tilde operatörü kullanımı nedir?

Düşünebildiğim tek şey eğer bir dize palindromic olup olmadığını kontrol gibi dize ya da bir listenin her iki taraf içinde bir şeyler yapın

def is_palindromic(s):
    return all(s[i] == s[~i] for i in range(len(s) / 2)) 

Başka iyi kullanımı?

CEVAP
29 Kasım 2011, Salı


Tüm veri türleri sadece yorumlama bayt farklı yolları olduğu C ödünç, tekli operatör (tek bir argüman alacak). "" Ya da "tamamlayıcı" giriş verileri tüm bitleri ters işlemi. ters olduğunu

Python, tam sayılar, bit twos-complement representation n tersine (b <- b XOR 1 için tek tek her bit) ve sonuç olarak tekrar yorumlanan bir ikişer-tamamlayıcı tamsayı. Tamsayılar (-x) - 1 eşdeğerdir.

~ operatörün şeyleşiyor formu operator.invert olarak verilmiştir. Kendi sınıfında bu operatör desteği, __invert__(self) bir yöntem vermek.

>>> import operator
>>> class Foo:
...   def __invert__(self):
...     print 'invert'
...
>>> x = Foo()
>>> operator.invert(x)
invert
>>> ~x
invert

Bir "" ya da "ters de aynı sınıfın bir örneği bir örneği" ters operatör için olası bir aday. tamamlayıcı olması manidardır herhangi bir sınıf Ancak, operatör yükleme kullandı, bu yüzden gerçekten işe yaradığı böylece sınıf __invert__ bir yöntem vermeden önce bunu yapar emin ol eğer karışıklığa yol açabilir. (Bayt dizeleri [eski: '\xff'] bayt dize tüm bitleri ters çevirmek için anlamlı olsa bile bu operatör desteği unutmayın.)

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • Sparta Spartanutul

    Sparta Spart

    18 HAZİRAN 2013
  • TechnoBuffalo

    TechnoBuffal

    8 HAZİRAN 2007