import pandas as pd
df1 = pd.DataFrame({'id': [24, 75, 32, 89]})
df2 = pd.DataFrame({'id': [4, 87, 145, 99, 146],
'lst': [[24, 56, 78], [24, 32, 89, 54, 127], [67], [78, 89, 34], [12, 45]]})
f1 = set(df1['id'])
df22 = df2.set_index('id')
for ident in df22.index:
f2 = set(df22['lst'][ident])
result = list(f1&f2)
if len(result):
print(ident, list(result))
s_small_sort =[{'ID': '174569', 'Name': 'Авдеев Корней', 'Age': '54'}, {'ID': '591886', 'Name': 'Авдеев Корней', 'Age': '24'}, {'ID': '392316', 'Name': 'Агафонов Остап', 'Age': '20'}, {'ID': '278400', 'Name': 'Аксёнов Натан', 'Age': '16'}, {'ID': '293922', 'Name': 'Алексеев Тимофей', 'Age': '29'}, {'ID': '604143', 'Name': 'Алексей Тeрeщенко', 'Age': '40'}, {'ID': '66721', 'Name': 'Артемьев Назарий', 'Age': '43'}, {'ID': '517124', 'Name': 'Артемьев Назарий', 'Age': '37'}]
s_big = [{'ID': '298835', 'Name': 'Лихачёв Аввакуум', 'Age': '76'}, {'ID': '720141', 'Name': 'Лихачёв Аввакуум', 'Age': '56'}, {'ID': '27164', 'Name': 'Суворов Август', 'Age': '31'}, {'ID': '469154', 'Name': 'Суворов Август', 'Age': '20'}, {'ID': '3290720', 'Name': 'Бибиков Авдей', 'Age': '19'}, {'ID': '3739928', 'Name': 'Юматов Авдей', 'Age': '14'}, {'ID': '4703064', 'Name': 'Алленов Авдей', 'Age': '24'}, {'ID': '4674783', 'Name': 'Нотович Агап', 'Age': '39'}, {'ID': '1443930', 'Name': 'Дудаков Агафон', 'Age': '24'}, {'ID': '2262161', 'Name': 'Круминь Агафон', 'Age': '82'}, {'ID': '2918131', 'Name': 'Мартюшев Агафон', 'Age': '81'}, {'ID': '4503953', 'Name': 'Мичурин Агафон', 'Age': '51'}, {'ID': '1405294', 'Name': 'Слобожанина Агафья', 'Age': '19'}, {'ID': '1430420', 'Name': 'Хмельнова Агафья', 'Age': '14'}, {'ID': '1862644', 'Name': 'Расторгуева Агафья', 'Age': '19'}, {'ID': '2835076', 'Name': 'Ямлиханова Агафья', 'Age': '15'}, {'ID': '4259886', 'Name': 'Федорова Агафья', 'Age': '22'}]
filtered_names = []
for name in (i['Name'] for i in s_big):
if name not in (i['Name'] for i in s_small_sort):
filtered_names.append(name)
print(filtered_names)
import my_module
reload(my_module)
from my_module import *
from PIL import Image, ImageDraw # Подключим необходимые библиотеки.
image = Image.open("temp.jpg") # Открываем изображение.
width = image.size[0] # Определяем исходную ширину.
height = image.size[1] # Определяем исходную высоту.
pix = image.load() # Выгружаем значения пикселей исходной картинки.
imagemode = image.mode # Получаем цветовой формат исходного изображения
multiplicator = 2 # тут множитель, по-умолчанию 2
newwidth = width * multiplicator # вычисляем новую высоту
newheight = height * multiplicator # вычисляем новую ширину
newimage = Image.new(mode=imagemode, size=(newwidth, newheight)) # создаем новую картинку
newpix = newimage.load() # загружаем новую картинку попиксельно
draw = ImageDraw.Draw(newimage) # создаем инструмент рисования
if __name__ == '__main__':
new_image_list = [] # создаем пустой массив строк нового изображения
for i in range(width):
new_line_list = [] # создаем пустой массив очередной новой строки
for j in range(height): # получаем цветность очередного пикселя исходной картинки
newpixel = pix[i, j]
for _ in range(multiplicator): # лепим в конец массива новой строки нужное кол-во таких пикселей
new_line_list.append(newpixel)
for _ in range(multiplicator): # лепим в конец массива строк нужное кол-во вновь созданных строк
new_image_list.append(new_line_list)
for i in range(newwidth): # рисуем построчно попиксельно новую картинку из массива строк нового изображения
for j in range(newheight):
pixel = tuple(new_image_list[i][j])
draw.point((i, j), pixel)
newimage.save("ans.bmp", "BMP") # записываем всё это в файл (выбрал bitmap потому, что там явно получаются пиксели
# как заказано, без дальнейшей оптимизации форматом jpg
del draw
image.close()
newimage.close()
def getnumber(x, y):
return 4*(int(y)-1)+(int(x)-1)
def encode(text, xkeys, ykeys):
counter = 0
newtext = ['' for _ in range(len(text))]
for y in ykeys:
for x in xkeys:
if counter < len(text):
newtext[getnumber(x, y)] = text[counter]
counter += 1
return ''.join(newtext) #ТУТ ПОДГОНЯТЬ УРАВНЕНИЕ ТАК, ЧТОБЫ ПРИ ШИФРОВКИ "ПРИЛЕТАЮВОСЬМОГО" ПОЛУЧАЛОСЬ "ТЮАЕООГМРЛИПОЬСВ"
def decode(text, xkeys, ykeys):
return) ''.join(text[getnumber(x, y)] for y in ykeys for x in xkeys)
import numpy as np
import matplotlib.pyplot as plt
x = np.array([-6, 7, 4, 3], dtype=float)
y = np.array([-297, 249, 33, 9], dtype=float)
def lagranz(x, y, t):
z = 0
for j in range(len(y)):
p1 = 1;
p2 = 1
for i in range(len(x)):
if i == j:
p1 = p1 * 1;
p2 = p2 * 1
else:
p1 = p1 * (t - x[i])
p2 = p2 * (x[j] - x[i])
z = z + y[j] * p1 / p2
return z
xnew = np.linspace(np.min(x), np.max(x), 100)
ynew = [lagranz(x, y, i) for i in xnew]
counter = 0
step = 9
for xx, yy, tex in zip(xnew, ynew, xnew):
if counter % step == 0:
t = plt.text(xx, yy, round(tex, 2), horizontalalignment='right' if xx < 0 else 'left',
verticalalignment='center', fontdict={'color':'red' if xx < 0 else 'green', 'size':14})
counter += 1
plt.plot(x, y, 'o', xnew, ynew)
plt.grid(True)
plt.show()