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

  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • Felice Musique

    Felice Musiq

    22 NİSAN 2014
  • L- Crysis

    L- Crysis

    30 Aralık 2011