From d8e54f8fd71a08418b120cf84aba29d1e1ec9f90 Mon Sep 17 00:00:00 2001 From: "Serebryakov.AO" Date: Tue, 6 Apr 2021 02:12:39 +0300 Subject: [PATCH] =?UTF-8?q?=D0=92=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=B2=D1=82=D0=BE=D1=80=D0=BE=D0=B3=D0=BE?= =?UTF-8?q?=20=D0=B7=D0=B0=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- task1.py | 3 +++ task2.py | 18 +++++++++++++++ task3.py | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ task4.py | 6 +++++ task5.py | 11 +++++++++ task6.py | 28 +++++++++++++++++++++++ 6 files changed, 134 insertions(+) create mode 100644 task1.py create mode 100644 task2.py create mode 100644 task3.py create mode 100644 task4.py create mode 100644 task5.py create mode 100644 task6.py diff --git a/task1.py b/task1.py new file mode 100644 index 0000000..799b2fb --- /dev/null +++ b/task1.py @@ -0,0 +1,3 @@ +list = [1, 2.0, True, 'Hello', None, ['1', 2, 3.0], (1, 2, 3), {'name': 'Tom', 'second_name': 'Hardy'}, complex(2, 3), set(['a', 'b', 'c', 'b', 'a'])] +for item in list: + print(type(item)) \ No newline at end of file diff --git a/task2.py b/task2.py new file mode 100644 index 0000000..430b57f --- /dev/null +++ b/task2.py @@ -0,0 +1,18 @@ +# Для списка реализовать обмен значений соседних элементов +list_length = input('Введите длинну списка - ') +if not list_length.isdigit() or int(list_length) <= 0: # проверяем ввод длины списка + print('Длинна - это положительное, целое число') + exit() +list_length = int(list_length) +ind = 0 +list = [] +while ind < list_length: + list.insert(ind, input('Введите элемент ' + str(ind) + ' - ')) + ind += 1 +print(list) # выводим введенный список +index = 0 +for item in list: + if index % 2 == 1: + list[index], list[index-1] = list[index-1], list[index] + index += 1 +print(list) # выводим измененный список diff --git a/task3.py b/task3.py new file mode 100644 index 0000000..ee45328 --- /dev/null +++ b/task3.py @@ -0,0 +1,68 @@ +# Пользователь вводит месяц в виде целого числа от 1 до 12. +# Сообщить к какому времени года относится месяц (зима, весна, лето, осень). Напишите решения через list и через dict. +month = input('Введите месяц - ') +if not month.isdigit() or int(month) <= 0 or int(month) < 1 or int(month) > 12: # проверяем ввод месяца + print('Месяц - это положительное целое число, от 1 до 12') + exit() +month = int(month) +monthes = ['Зима', 'Зима', 'Весна', 'Весна', 'Весна', 'Лето', 'Лето', 'Лето', 'Осень', 'Осень', 'Осень', 'Зима'] +print(monthes[month-1]) # через список + +dict_seasons = { + 1: 'Весна', + 2: 'Лето', + 3: 'Осень', + 4: 'Зима' +} +dict_monthes = { + 1: { + 'name': 'Январь', + 'season': 4 + }, + 2: { + 'name': 'Февраль', + 'season': 4 + }, + 3: { + 'name': 'Март', + 'season': 1 + }, + 4: { + 'name': 'Апрель', + 'season': 1 + }, + 5: { + 'name': 'Май', + 'season': 1 + }, + 6: { + 'name': 'Июнь', + 'season': 2 + }, + 7: { + 'name': 'Июль', + 'season': 2 + }, + 8: { + 'name': 'Август', + 'season': 2 + }, + 9: { + 'name': 'Сентябрь', + 'season': 3 + }, + 10: { + 'name': 'Октябрь', + 'season': 3 + }, + 11: { + 'name': 'Ноябрь', + 'season': 3 + }, + 12: { + 'name': 'Декабрь', + 'season': 4 + } +} +dict_month = dict_monthes.get(month) +print('Месяц ' + dict_month['name'] + '. Время года - ' + dict_seasons[dict_month['season']] + '!') # через словарь diff --git a/task4.py b/task4.py new file mode 100644 index 0000000..6e5cd47 --- /dev/null +++ b/task4.py @@ -0,0 +1,6 @@ +# Пользователь вводит строку из нескольких слов, разделённых пробелами. Вывести каждое слово с новой строки. +# Строки необходимо пронумеровать. Если в слово длинное, выводить только первые 10 букв в слове +long_string = input('Введите сроку: ') +list_words = long_string.split() +for ind, word in enumerate(list_words, 1): + print(ind, word[:9]) diff --git a/task5.py b/task5.py new file mode 100644 index 0000000..de8cbe1 --- /dev/null +++ b/task5.py @@ -0,0 +1,11 @@ +# Реализовать структуру «Рейтинг», представляющую собой не возрастающий набор натуральных чисел. +rating = [9, 5, 2, 1] +while True: # Запрашиваем новые элементы, пока программа не будет остановлена + new_element = input('Введите новый элемент рейтинга - ') + if not new_element.isdigit() or int(new_element) < 1: # проверяем, что число натуральное + print('Введенное значение должно быть натуральным числом!') + continue + new_element = int(new_element) + rating.append(new_element) # добавляем новый элемент в конец рейтинга + rating.sort() # Сортируем рейтинг + print(rating) diff --git a/task6.py b/task6.py new file mode 100644 index 0000000..1a69b94 --- /dev/null +++ b/task6.py @@ -0,0 +1,28 @@ +# Реализовать структуру данных «Товары». +products = [] +product_params = {'name': 'Название', 'price': 'цена', 'count': 'Количество', 'ed': 'ед'} +ind = 0 +while True: + print('Введите товар', str(ind+1)) + current_params = {} + for param in product_params.keys(): + new_value = input(product_params[param] + ': ') + if new_value.isdigit() : + new_value = int(new_value) + current_params[param] = new_value + products.append((ind, current_params)) + if input('"0" для завершения ввода: ') == '0': + break + ind += 1 +print('Вы ввели: ') +print(products) +result = {} +for param in product_params: + result[param] = set([]) +for product in products: + for param in product_params: + result[param].add(product[1][param]) +for param in product_params: + result[param] = list(result[param]) +print('Аналитика:') +print(result)