Wpis z mikrobloga

Co znaczy "zmienna //= 10" w pythonie? Próbowałem szukać w google ale oczywiście google omija w szukaniu takie znaki. #python
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@wonsz_smieszek: W dwójce pojedynczy slash jest dzieleniem całkowitym lub zmiennoprzecinkowym w zależności od argumentów, natomiast w trójce usunięto tę dwuznaczność i jest tak, jak mówisz.

W dwójce też jest podwójny slash.
  • Odpowiedz
@wonsz_smieszek: Napisałem wyżej :P Jeśli któryś z argumentów dzielenia jest floatem (lub liczbą zespoloną), to / jest to dzielenie zmiennoprzecinkowe, w przeciwnym wypadku (jeśli oba arugmenty są intami lub longami) jest to dzielenie całkowite i w tym konkretnym przypadku nie ma różnicy między / a // (który zawsze oznacza dzielenie całkowite).
  • Odpowiedz
@wonsz_smieszek: Taka ciekawostka w dwójce też było zmiennoprzecinkowe. Trick polegał na dodaniu kropki co zamieniało pierwszą liczbę w float. Poza tym to był błąd, że nie zachowali w tym przypadku kompatybilności wstecznej. I dlaczego niby domyśla operacja na dwóch intach ma dać w rezultacie float.

python2 -> 2./3 oraz 2/3
python3 -> 2/3 oraz 2//3
  • Odpowiedz