Pyton

Python xrange a. zasięg

Python xrange a. zasięg
Do wersji Pythona 2.x, były w sumie dwie podstawowe metody używane w tym języku do generowania listy liczb całkowitych w podanym zakresie. Poniżej wymieniono dwie metody:

zasięg ()
xzakres ()

Idąc dalej, z najnowszą wersją Pythona (3 i dalej), range () został wycofany, a xrange () został zmieniony na range (). Teraz w Pythonie 3 jest tylko jedna funkcja dla tej metody, i.mi., zasięg (). W Pythonie 3 funkcja range() jest po prostu kolejnym sposobem implementacji starszej wersji xrange() Pythona 2.x. Tutaj odniesiemy się do tych dwóch.

Xzakres ()

xrange() służy do tworzenia sekwencji liczb, takiej jak funkcja range().

Składnia

Składnia użyta do zdefiniowania xrange() to:

xrange(początek,koniec,krok)

Funkcja służy do określenia zakresu numerów od (zawiera) do końca (nie uwzględnia).

Parametry

Poniżej znajduje się lista wymaganych parametrów:

Start: Pozycja początkowa sekwencji numerów
Koniec: pozycja końcowa sekwencji numerów
Krok: Rozróżnienie dwóch kolejnych liczb w serii numbers.

Przykłady

W poniższym przykładzie sprawdzimy sposoby definiowania xrange.

Tutaj będziemy określać tylko pozycję końcową.

Tak więc wartość końcowa jest ustawiona na 5, a następnie otrzymujemy wydrukowaną pozycję końcową, jak pokazano poniżej:

Teraz zobaczymy metodę wywołania zakresu, składnia do wywołania end będzie wyglądać tak:

>>> x = xzakres(koniec)

Wtedy go wydrukujemy.

Na wyjściu otrzymamy zakres, jak pokazano powyżej.

Teraz zdefiniujemy zarówno punkt początkowy, jak i końcowy. Tutaj punkt początkowy to 2, a punkt końcowy to 5. Następnie wydrukowaliśmy pozycje początkową i końcową, jak pokazano poniżej:

Następnie utworzymy sekwencję liczb z naszego punktu początkowego i końcowego, i.mi., 2 do 5.

>>> y = xzakres(początek,koniec)

Na koniec przyjrzymy się metodzie definiowania punktu początkowego, kroku i punktu końcowego. Po zdefiniowaniu wszystkich trzech parametrów; będziemy je wywoływać podobnie do metody pokazanej poniżej:

Teraz, aby wywołać xrange dla tych trzech parametrów, użyjemy następującej składni:

>>> z = xzakres(początek,krok,koniec)

Zasięg ()

Zakres () służy do tworzenia listy i jest szybszą funkcją dla wielu iteracji.

Składnia

Używana jest następująca składnia:

>>> zakres(początek,koniec,krok)

Przykłady

W pierwszym przypadku będziemy definiować wartość końcową. Używana do tego składnia to:

>>> zakres(koniec)

Tak więc w poniższym przykładzie użyjemy 3 jako wartości końcowej zakresu. Po wydrukowaniu zwraca wartości, z wyłączeniem wartości końcowej.

W kolejnym przykładzie posługujemy się przykładem opisu punktu początkowego i końcowego. Wartość zacznie się od 1 i zakończy na 10 (poprzez jej wykluczenie). Uwzględniono punkt początkowy, ale pominięto punkt końcowy. Składnia jest podobna do tej podanej poniżej:

>>> zakres (początek, koniec)

Zatem definiujemy punkt początkowy, a następnie punkt końcowy, czyli odpowiednio 1 i 10.

Teraz w kolejnym przykładzie będziemy mieli do czynienia z funkcją kroku. Funkcja definiująca przerwę między dowolnymi dwoma punktami w sekwencji. Wartość zacznie się od 0 i zakończy na 10 (poprzez jej wykluczenie). Zastosowana składnia jest podana poniżej:

>>> zakres (początek,krok,koniec)

Przykład podano poniżej, gdzie 2 to wartość kroku.

Zalety

zasięg ()

Szybciej jest, jeśli iteracje mają być wykonywane wiele razy. range () ma tylko wartości obiektów całkowitych w czasie rzeczywistym. Pod względem pamięci nie działa dobrze.

xzakres()

Za każdym razem musi odtwarzać obiekt całkowity. xrange() nie jest, ponieważ nie obsługuje wycinków i metod list. xrange() zajmuje tyle samo pamięci. Tak więc, jeśli chodzi o wydajność, zwłaszcza gdy użytkownicy iterują w większym zakresie wartości, xrange() działa znacznie lepiej.

Podobieństwa między zakresem Python 2 i Python 3 oraz xrange

xrange Pythona 2 ma opisową reprezentację w postaci ciągu, który jest bardzo podobny do wartości obiektu range w Pythonie 3.

Wartość xrange() w Pythonie 2 jest iterowalna, podobnie jak rang() w Pythonie 3.

xrange() i range() mają wartości kroku, końca i punktu początkowego. W obu przypadkach step jest polem opcjonalnym, podobnie jak wartość początkowa.

Zarówno xrange z Pythona 2, jak i 3 obsługuje długość, która może być indeksowana w kolejności do przodu lub do tyłu. Oto przykład tego samego:

Różnice między range() i xrange()

Ponieważ xrange() ocenia tylko obiekt generatora z wartościami wymaganymi przez leniwą ocenę, szybciej jest zaimplementować w range(). range() pomaga zwrócić listę i zawiera wszystkie obiekty, których można użyć, podczas gdy xrange() zwraca obiekty powiązane z listą i nie można ich do nich zastosować, więc możemy to uznać za wadę.

Zmienna używana w funkcji range() przechowuje wartość range, a tym samym zajmuje dużo pamięci w porównaniu z funkcją xrange(), która zajmuje tylko część pamięci ze względu na zmienne. range() zwraca obiekt zakresu, podczas gdy xrange() zwraca obiekt generatora.

Funkcja range (1, 7, 2) zwróci wynik [1, 3, 5], a wejście xrange (1, 7, 2) zwróci wynik [1, 3, 5]. W ten sposób możemy założyć, że są one podobne we wzorcu.

Wniosek

range() i xrange() mają różne cechy, jak omówiono powyżej. Wszystkie porównania wymienione w tym samouczku, wraz z przykładami, pomogą czytelnikom lepiej wybrać preferowaną metodę w oparciu o ich wymagania.

Jak używać Xdotool do stymulacji kliknięć myszą i naciśnięć klawiszy w systemie Linux?
Xdotool to darmowe i otwarte narzędzie wiersza poleceń do symulacji kliknięć myszą i naciśnięć klawiszy. Ten artykuł zawiera krótki przewodnik dotyczą...
5 najlepszych ergonomicznych myszy komputerowych dla systemu Linux
Czy długotrwałe korzystanie z komputera powoduje ból nadgarstka lub palców?? Cierpisz na sztywne stawy i ciągle musisz uścisnąć dłonie? Czy czujesz pa...
Jak zmienić ustawienia myszy i touchpada za pomocą Xinput w systemie Linux?
Większość dystrybucji Linuksa jest domyślnie dostarczana z biblioteką „libinput” do obsługi zdarzeń wejściowych w systemie. Może przetwarzać zdarzenia...