Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,026 changes: 1,026 additions & 0 deletions lesson_2.ipynb

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions lesson_2_task_1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
my_int = 123
my_float = 1.5
my_str = "String"
my_list = ['True', False, 156]
my_tuple = ('False', True, 651)
my_dict = {1: '1', 2: '2', 3: '3'}

big_list = [my_int, my_float, my_str, my_list, my_tuple, my_dict]
for el in big_list:
print(f'{el} is {type(el)}')
4 changes: 4 additions & 0 deletions lesson_2_task_2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
my_list = [el for el in input('Введите массив: ').split(' ')]
for el in range(0, len(my_list) - 1, 2):
my_list[el], my_list[el + 1] = my_list[el + 1], my_list[el]
print(my_list)
8 changes: 8 additions & 0 deletions lesson_2_task_3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
season_list = ['winter', 'spring', 'summer', 'autumn']
seasons_dict = {1: 'winter', 2: 'spring', 3: 'summer', 4: 'autumn'}
month = int(input('Введите номер месяца по счёту: '))
k = month // 3 # k переменная созданная для определения сезона по порядку
if k == 4:
k -= 4
print(season_list[k])
print(seasons_dict.get(k + 1))
9 changes: 9 additions & 0 deletions lesson_2_task_4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# my_str = input('Введите строчку: ')
# my_list = list(my_str.split())
# print(' '.join(my_list)) #Можно ли как-то в таком выводе ограничить количество выводимых элементов?

my_str = input('Введите строчку: ')
my_list = list(my_str.split())
for el in my_list:
print(el[0:10], end=' ')

25 changes: 25 additions & 0 deletions lesson_2_task_5.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
def index_number(number):
global my_list
number_count = my_list.count(number)
if number_count > 0:
i = my_list.index(number)
my_list.insert(i + number_count, number)
elif number < my_list[len(my_list) - 1]:
my_list.append(number)
else:
for el in my_list:
if number > el:
j = my_list.index(el)
my_list.insert(j, number)
break


my_list = [7, 5, 3, 3, 2]
digit = 10
while digit > 0:
number = int(input("Введите число: "))
index_number(number)
print(my_list)
check_str = (input("Вы хотите закончить изменение рейтинга?(Если нет - нажмите Enter) "))
if len(check_str) > 0:
digit = 0
20 changes: 20 additions & 0 deletions lesson_2_task_6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
product_list = []
num = 0
while input("Хотите добаваить продук? введите да/нет: ") == 'да':
num += 1
features = {}
while input("Хотите добавить пармаетр? Введите да/нет: ") == 'да':
feature_key = input("Название парамера: ")
feature_value = input("Значене параметра: ")
features[feature_key] = feature_value
product_list.append(tuple([num, features]))
print(product_list)

analitic = {}
for el in product_list:
for feature_key, feature_value in el[1].items():
if feature_key in analitic:
analitic[feature_key].append(feature_value)
else:
analitic[feature_key] = [feature_value]
print(analitic)
18 changes: 18 additions & 0 deletions lesson_3_task_1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
def division(var1, var2):
"""
Возвращает частное от деления var1 на var2, если эт возможно.

:param var1: int/float
:param var2: int/float
:return: int/float
"""
try:
var = var1 / var2
return var
except ZeroDivisionError:
return "Значенатель не должен быть 0"
except ValueError:
return "Введит епожалуйста только числа"


print(division((int(input("Введите 1-ое число: "))), (int(input("Введите 2-ое число: "))), ))
19 changes: 19 additions & 0 deletions lesson_3_task_2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
def oytput_info(name, surname, year, city, email, phone):
"""
Выводит на экран передоваемые параметры.

:param name: str
:param surname: str
:param year: int
:param city: str
:param email: str
:param phone: str/int
:return: None
"""
print(name, surname, year, city, email, phone)
return


oytput_info((input("Введите ваше имя: ")), (input("Введите вашу фамилию: ")),
(int(input("Введите год вашего рождения: "))), (input("Введите город проживания: ")),
(input("Введите ваш email: ")), (input("Введите ваш номер телефона: ")))
15 changes: 15 additions & 0 deletions lesson_3_task_3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
def sum_2_max_el(var1, var2, var3):
"""
Возваращет сумму двух максимальных элементов передоваемых в качестве параметров.

:param var1: int/float
:param var2: int/float
:param var3: int/float
:return: int/float
"""
my_list = [var1, var2, var3]
my_list.sort(reverse=True)
return sum(my_list[:2])


print(sum_2_max_el((int(input("Введите 1-ое число: "))), (int(input("Введите 2-ое число: "))), (int(input("Введите 3-е число: ")))))
27 changes: 27 additions & 0 deletions lesson_3_task_4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
def exponentiation_1(x, y):
"""
Возвращает число x возведённое в степень y, использую степень.

:param x: float
:param y: int
:return: float
"""
return (x ** y)


def exponentiation_2(x, y):
"""
Возвращает число x возведённое в степень y, используя цикл.

:param x: float
:param y: int
:return: x в степени y
"""
s = 1 / x
for el in range(abs(y) - 1):
s *= (1 / x)
return s


print(exponentiation_1((float(input("Введите число: "))), (int(input("Введите в какую степень возвести число: ")))))
print(exponentiation_2((float(input("Введите число: "))), (int(input("Введите в какую степень возвести число: ")))))
22 changes: 22 additions & 0 deletions lesson_3_task_5.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
def my_sum():
"""
Возвращет сумму вводимых чисел.

:return: int
"""
sum_res = 0
ex = True
while ex:
number = input('Вводите сила или Q для выхода - ').split()
res = 0
for el in range(len(number)):
if number[el] == 'q' or number[el] == 'Q':
ex = False
break
else:
res = res + int(number[el])
sum_res = sum_res + res
return sum_res


print(my_sum())
25 changes: 25 additions & 0 deletions lesson_3_task_6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
def int_func(word):
"""
Возвращает слово с первой заглавной буквой.

:param word: str
:return: str
"""
return word.title()


def output_new_int_func(string):
"""
Возвращает строку, в кторой каждое слово будет начинаться с заглвной буквы.

:param string: str
:return: str
"""
separate_word = string.split()
for el in separate_word:
str_el = str(el)
print(int_func(str_el), end=' ')
return


output_new_int_func(input("Введите строку: "))
Loading