На сайте Билайна при настройке тарифа прям анти-учебник по проектированию интерфейсов. Из пяти интерактивных элементов три на самом деле таковыми не являются, а служат просто для индикации. Помимо заблокированных переключателей второй ползунок "Звонки" никуда не двигается: невозможно выбрать какое-то другое значение, кроме установленного.
Индикация может быть совмещена с элементами управления только в том случае, если эти элементы действительно переключают состояние системы. А заблокированными элементы управления могут быть только тогда, когда существует ситуация, при которой они в том же контексте разблокированы.
Нужно было оставить один слайдер с интернетом, а под ним просто маркированный список включенных в тариф опций.
#web
https://docs.python.org/3/library/asyncio.html
#asyncio
#Asynchronous programming is more complex than classical “#sequential” programming: see the Develop with asyncio page which lists common traps and explains how to avoid them. Enable the debug mode during development to detect common issues.
http://wla.berkeley.edu/~cs61a/fa11/lectures/streams.html
In this chapter, we continue our discussion of real-world applications by developing new tools to process #sequential#data. In Chapter 2, we introduced a sequence interface, implemented in Python by built-in data types such as #tuple and #list. #Sequences supported two operations: querying their length and accessing an element by index. In Chapter 3, we developed a user-defined implementations of the sequence interface, the Rlist class for representing recursive lists. These sequence types proved effective for representing and accessing a wide variety of sequential #datasets.