Skip to content
Merged
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
3 changes: 3 additions & 0 deletions Seminar6/file.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
0
1
2
24 changes: 24 additions & 0 deletions Seminar6/task1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
'''Задача: предложить улучшения кода для уже решённых задач с помощью использования лямбд, filter, map, zip, enumerate, list comprehension.'''

'''filter, map '''

'''Задайте список из N элементов, заполненных числами из промежутка [-N, N]. Найдите произведение элементов на указанных позициях. Позиции хранятся в файле file.txt в одной строке одно число.'''
import random
def fill_list_numbers(n):
path = './Seminar6/file.txt'
data = open(path, 'r')
positions = [int(line) for line in data] # list comprehension
data.close()
d = 1
numbers = [random.randint(-n, n) for i in range(n)] # list comprehension
for i in range(n):
if i in positions:
d = d * numbers[i]
print (numbers)
return d
n = int(input('Введите число n = '))
print(n)
print(fill_list_numbers(n))



11 changes: 11 additions & 0 deletions Seminar6/task2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
'''Задача: предложить улучшения кода для уже решённых задач с помощью использования лямбд, filter, map, zip, enumerate, list comprehension.'''

'''filter'''

'''Задайте последовательность чисел. Напишите программу, которая выведет список неповторяющихся элементов исходной последовательности.'''

lst = [4, 5, 7, 83, 21, 50, 0, 5, 21]
def f(item):
return len(list(filter(lambda x: x == item, lst))) == 1
result = list(filter(f, lst))
print(result)
18 changes: 18 additions & 0 deletions Seminar6/task3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
'''Задача: предложить улучшения кода для уже решённых задач с помощью использования лямбд, filter, map, zip, enumerate, list comprehension.'''

'''map, enumerate, lambda'''

'''5. Задайте число. Составьте список чисел Фибоначчи, в том числе для отрицательных индексов.
Пример:
для k = 8 список будет выглядеть так: [-21 ,13, -8, 5, −3, 2, −1, 1, 0, 1, 1, 2, 3, 5, 8, 13, 21] Негафибоначчи'''

n = int(input('Введите число '))

numbers = [0,1]
for i in range(2, n + 1):
numbers.append(numbers[i - 1] + numbers [i - 2])

not_numbers = list(map(lambda p: p[1] * (-1)**p[0], enumerate(numbers[1:])))

not_numbers.reverse()
print (not_numbers + numbers)