Простой Python. современный стиль программирования - читать онлайн бесплатно полную версию книги . Страница 134

его. Совпадают ли выведенные значения?

2. Создайте новый класс с именем Thing2 и присвойте его атрибуту letters значе-

ние 'abc'. Выведите на экран значение атрибута letters.

3. Создайте еще один класс, который, конечно же, называется Thing3. В этот раз

присвойте значение 'xyz' атрибуту объекта, который называется letters.

Выведите на экран значение атрибута letters. Понадобилось ли вам создавать

объект класса, чтобы сделать это?

4. Создайте класс, который называется Element, имеющий атрибуты объекта name, symbol

и number. Создайте объект этого класса со значениями 'Hydrogen', 'H' и 1.

5. Создайте словарь со следующими ключами и значениями: 'name': 'Hydrogen',

'symbol': 'H', 'number': 1. Далее создайте объект с именем hydrogen класса Element

с помощью этого словаря.

6. Для класса Element определите метод с именем dump(), который выводит на экран

значения атрибутов объекта (name, symbol и number). Создайте объект hydrogen из

этого нового определения и используйте метод dump(), чтобы вывести на экран

его атрибуты.

Упражнения

179

7. Вызовите функцию print(hydrogen). В определении класса Element измените имя

метода dump на __str__, создайте новый объект hydrogen и затем снова вызовите

метод print(hydrogen).

8. Модифицируйте класс Element, сделав атрибуты name, symbol и number закрытыми.

Определите для каждого атрибута свойство получателя, возвращающее значение

соответствующего атрибута.

9. Определите три класса: Bear, Rabbit и Octothorpe. Для каждого из них определи-

те всего один метод — eats(). Он должен возвращать значения 'berries' (для

Bear), 'clover' (для Rabbit) или 'campers' (для Octothorpe). Создайте по одному

объекту каждого класса и выведите на экран то, что ест указанное животное.

10. Определите три класса: Laser, Claw и SmartPhone. Каждый из них имеет только

один метод — does(). Он возвращает значения 'disintegrate' (для Laser), 'crush'

(для Claw) или 'ring' (для SmartPhone). Далее определите класс Robot, который

содержит по одному объекту каждого из этих классов. Определите метод does()

для класса Robot, который выводит на экран все, что делают его компоненты.

7 Работаем с данными

профессионально

Из этой главы вы узнаете множество приемов приручения данных. Большинство

из них касаются встроенных типов данных.

 Строки — последовательности символов в кодировке Unicode, используемые

для представления текстовых данных.

 Байты и массивы байтов — последовательности восьмибитных целых чисел,

используемые для представления двоичных данных.

Текстовые строки

Текст является наиболее популярным типом данных для большинства читателей,

поэтому мы начнем главу с рассмотрения мощных особенностей текстовых строк

в Python.

Unicode

Все текстовые примеры, показанные в книге до этого момента, имели формат

ASCII. Этот формат был определен в 1960-х годах, когда компьютеры были раз-

мером с холодильник и выполняли вычисления немного лучше последнего. Основ-

ной единицей хранения информации был байт, который мог хранить 256 уникаль-