Skip to content

Instantly share code, notes, and snippets.

@hodunov
Last active August 12, 2021 15:24
Show Gist options
  • Save hodunov/9f437a5465e11b2570e61781a28b0be2 to your computer and use it in GitHub Desktop.
Save hodunov/9f437a5465e11b2570e61781a28b0be2 to your computer and use it in GitHub Desktop.
Homework 8
# 1. Дан список строк my_list. Создать новый список в который поместить
# элементы из my_list по следующему правилу:
# Если строка стоит на нечетном месте в my_list, то ее заменить на
# перевернутую строку. "qwe" на "ewq".
# Если на четном - оставить без изменения.
# Задание сделать с использованием enumerate или range.
my_list = ["Это", "просто", "пример", "списка", "123", "456"]
def reserve_second_value(my_list):
result = []
name = 'test'
for index in range(len(my_list)):
if index % 2:
result.append(my_list[index][::-1])
else:
result.append(my_list[index])
return result, name
print(reserve_second_value(["Это", "просто", "пример", "списка", "123", "456"]))
second_list = ["Это", "просто", "пример", "списка", "123", "456"]
example = [1, 2, 3, 4, 5]
first, second, *other = example
# first, second, other = example
print(first, second, other, sep=' !!!! ')
result_2 = [second_list[index][::-1] if index % 2 else second_list[index] for index in
range(len(second_list))]
test = [1, 2, 3, 4, 5, 7, 1, 2, 1, 3, 1, 2, 2, 2, 2, 2, 2]
print(set(test))
print(max(set(test), key=test.count))
letters = ['a', 'b', 'd', 'w', 'z', 'e']
print(max(letters))
for letter in letters:
print(ord(letter))
print(letters)
letters.reverse()
# print(dir(letters))
print(letters)
# 2. Дан список строк my_list. Создать новый список в который поместить
# элементы из my_list у которых первый символ - буква "a".
list_of_names = ["Artem", "Egor", "Ihor", "AndrII", 'anatoliy']
names = []
for name in my_list:
if name.lower().startswith("a"):
names.append(name)
print(*names)
my_names = [name for name in list_of_names if name.lower().startswith("a")]
print(*my_names)
# 3. Дан список строк my_list. Создать новый список в который поместить
# элементы из my_list в которых есть символ - буква "a" на любом месте.
my_list = ["AA", "BADa", "dada", "AndrII", 'hello']
names = []
for name in my_list:
if 'A' in name.upper():
names.append(name)
print(*names)
# 4. Дан список my_list в котором могут быть как строки (type str) так и целые числа (type int).
# Например [1, 2, 3, "11", "22", 33]
# Создать новый список в который поместить только строки из my_list.
my_list = [1, 1, 1, 1, 1, 2, 3, "11", "22", 33]
print(set(my_list))
my_list.insert(0, "OBJECT")
print(my_list[::])
result = []
for element in my_list:
if type(element) == str:
result.append(element)
print(result)
# 10) Дан список словарей persons в формате [{"name": "John", "age": 15}, ... ,{"name": "Jack", "age": 45}]
# а) Напечатать имя самого молодого человека. Если возраст совпадает - напечатать все имена самых молодых.
# б) Напечатать самое длинное имя. Если длина имени совпадает - напечатать все имена.
# в) Посчитать среднее количество лет всех людей из списка.
persons = [
{"name": "John", "age": 15},
{"name": "Alex", "age": 25},
{"name": "Jack", "age": 45}
]
for index in range(len(persons)):
print(index)
print(persons[2]["name"])
age = []
for person in persons:
age.append(person["age"])
# age = [person["age"] for person in persons]
min_age = min(age)
for person in persons:
if person["age"] == min_age:
print(person["name"])
Ihor = {
"name": "Jack",
"age": 15,
"address": {
"street": "Sumska st.",
"house": 115,
"post_index": 61000,
}}
print(Ihor["address"])
my_list_2 = ["Artem", "Egor", "Ihor", "AndrII", 'anatoliy']
for name in my_list_2:
if name in ("Egor", "Ihor", "AndrII"):
print(name)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment