Чтение онлайн

на главную - закладки

Жанры

Программирование на Python3 с PyQt5
Шрифт:

window.show # отобразить окно на экране

sys.exit(app.exec_) # запуск основного цикла приложения

if __name__ == '__main__':

main

3.6 Конвертация файла «ui» в скрипт Python

(PyQt5 UI code generator)

pyuic5 name.ui -o name.py

Запускаем из папки с файлом ui в cmd, после чего появляется “py”

скрипт в той же папке.

ЛЕКЦИЯ 4 – СПИСКИ, СЛОВАРИ, ЦИКЛЫ И МАССИВЫ

4.1 Списки и кортежи

Список представляет собой упорядоченную последовательность элементов. Он очень гибкий и является одним из самых используемых типов в Python. Элементы списка не обязательно должны быть одного типа.

Объявить список довольно просто. Внутрь квадратных скобок помещаются элементы списка, разделённые запятой:

a = [67, 5, 90, 20, 30]

b = ['Маша', 'Ваня', 'Лена', 'Марина', 'Арнольд']

print(a)

print(b)

aa = a[:] # Автономная копия списка

aaa = list(a) # Автономная копия списка

aaaa = a.copy # Автономная копия списка

aaa.reverse # Сортировка списка в обратном порядке

print(a[0]) # Первый элемент 67

print(a[2]) # Третий элемент 90

print(b[1]) # второй элемент Ваня

b.append('Дима') # Добавление элемента в конец списка

print(b[-1]) # Печать последнего элемента Дима

a.sort # Сортировка списка

print(a) # [5, 20, 30, 67, 90]

print(aa) # [67, 5, 90, 20, 30]

print(aaa) # [30, 20, 90, 5, 67]

print(aaaa) # [67, 5, 90, 20, 30]

[67, 5, 90, 20, 30]

['Маша', 'Ваня', 'Лена', 'Марина', 'Арнольд']

67

90

Ваня

Дима

[5, 20, 30, 67, 90]

[67, 5, 90, 20, 30]

[30, 20, 90, 5, 67]

[67, 5, 90, 20, 30]

Так же как и список, кортеж (tuple) является упорядоченной последовательностью элементов. Вся разница заключается в том, что кортежи неизменяемы. Кортежи используются для защиты данных от перезаписи и обычно работают быстрее, чем списки, т.к. их нельзя изменять.

Для создания кортежа нужно поместить внутрь круглых скобок элементы, разделённые запятой:

t = (5, 'program', 1 + 3j)

print("t[0] =", t[0])

print("t[1] =", t[1])

print("t[2] =", t[2])

for i in t:

print(i, end=" – ")

t[0] = 5

t[1] = program

t[2] = (1+3j)

5 – program – (1+3j) –

Списки имеют большой набор функций:

• append , extend – добавление;

• insert – вставка;

• index – найти индекс

первого вхождения конкретного элемента;

• count – подсчет повторов элемента;

• remove , del – удаление элемента;

• sort – сортировка;

• reverse – реверс;

• pop – извлечение элемента;

• len – длина списка;

• max – максимальный элемент;

• min – минимальный элемент;

• оператор in – проверка элемента на вхождение.

4.2 Словари

Структура данных, позволяющая идентифицировать ее элементы не по числовому индексу, а по произвольному, называется словарем или ассоциативным массивом. Соответствующая структура данных в языке Python 3 называется dict.

Каждый элемент словаря состоит из двух объектов: ключа и значения. В примере ниже ключом является название страны, а значением является название столицы. Ключ идентифицирует элемент словаря, значение является данными, которые соответствуют данному ключу. Значения ключей – уникальны, двух одинаковых ключей в словаре быть не может.

# Создадим пустой словарь Capitals

Capitals = dict

# Заполним его несколькими значениями

Capitals['Russia'] = 'Moscow'

Capitals['Ukraine'] = 'Kiev'

Capitals['USA'] = 'Washington'

Countries = ['Russia', 'France', 'USA', 'Russia']

for country in Countries:

# Для каждой страны из списка проверим, есть ли она в словаре Capitals

if country in Capitals:

print('Столица страны ' + country + ': ' + Capitals[country])

else:

print('В базе нет страны c названием ' + country)

Столица страны Russia: Moscow

В базе нет страны c названием France

Столица страны USA: Washington

Столица страны Russia: Moscow

Методы словарей:

• clear – очищает словарь;

• copy – возвращает копию словаря;

• fromkeys(seq[, value]) – создает словарь с ключами из seq и значением value (по умолчанию None);

• get(key[, default]) – возвращает значение ключа, но если его нет, не бросает исключение, а возвращает default (по умолчанию None);

• items – возвращает пары (ключ, значение);

• keys – возвращает ключи в словаре;

• pop(key[, default]) – удаляет ключ и возвращает значение. Если ключа нет, возвращает default (по умолчанию бросает исключение);

• popitem – удаляет и возвращает пару (ключ, значение). Если словарь пуст, бросает исключение KeyError. Помните, что словари неупорядочены;

• setdefault(key[, default]) – возвращает значение ключа, но если его нет, не бросает исключение, а создает ключ с значением default (по умолчанию None);

Поделиться:
Популярные книги

Разговоры запросто

Роттердамский Эразм
Научно-образовательная:
философия
5.00
рейтинг книги
Разговоры запросто

Американские боги. Король горной долины. Сыновья Ананси

Гейман Нил
Фантастика:
научная фантастика
8.30
рейтинг книги
Американские боги. Король горной долины. Сыновья Ананси

Упадок и разрушение Британской империи 1781-1997

Брендон Пирс
Научно-образовательная:
история
4.00
рейтинг книги
Упадок и разрушение Британской империи 1781-1997

Шиноби

Василий
Фантастика:
попаданцы
5.00
рейтинг книги
Шиноби

Рассказы

Фолкнер Уильям Катберт
Проза:
классическая проза
5.00
рейтинг книги
Рассказы

Неучтенный элемент. Том 10

NikL
10. Антимаг. Вне системы
Фантастика:
фэнтези
5.25
рейтинг книги
Неучтенный элемент. Том 10

Воронцов. Перезагрузка

Тарасов Ник
1. Воронцов. Перезагрузка
Фантастика:
попаданцы
альтернативная история
фантастика: прочее
5.40
рейтинг книги
Воронцов. Перезагрузка

Поводыри на распутье

Панов Вадим Юрьевич
2. Анклавы
Фантастика:
киберпанк
9.00
рейтинг книги
Поводыри на распутье

Перстень Левеншельдов (сборник)

Лагерлёф Сельма
Проза:
классическая проза
5.00
рейтинг книги
Перстень Левеншельдов (сборник)

Таинственный остров (иллюстр.)

Верн Жюль Габриэль
Приключения:
путешествия и география
9.42
рейтинг книги
Таинственный остров (иллюстр.)

Шайтан Иван

Тен Эдуард
1. Шайтан Иван
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.25
рейтинг книги
Шайтан Иван

Хроники Иберлена (Трилогия)

Бочаров Анатолий Юрьевич
Хроники Иберлена
Фантастика:
фэнтези
героическая фантастика
5.00
рейтинг книги
Хроники Иберлена (Трилогия)

Звезды над Самаркандом

Бородин Сергей Петрович
Проза:
историческая проза
7.50
рейтинг книги
Звезды над Самаркандом

Хроники Сиалы. Трилогия

Пехов Алексей Юрьевич
Хроники Сиалы
Фантастика:
фэнтези
9.03
рейтинг книги
Хроники Сиалы. Трилогия