Возможно ли из класса-потомка получить класс-родитель?
from dataclasses import dataclass
import typing
import io
# Определение базового класса для хранения информации о файле и ID объекта
@dataclass
class EjectedObjectDataFileNameAndObjectID:
file_name: str # Имя файла
object_id: int # ID объекта
# Определение класса для хранения изображений
@dataclass
class EjectedObjectDataImages:
images: typing.List[io.BytesIO] # Список изображений в формате BytesIO
# Класс, наследующий оба вышеуказанных класса и добавляющий дополнительные атрибуты
@dataclass
class EjectedObjectData(EjectedObjectDataImages, EjectedObjectDataFileNameAndObjectID):
uuid: str # Уникальный идентификатор
position: typing.Tuple[int, int] = (0, 0) # Позиция объекта (по умолчанию (0, 0))
sorted: bool = False # Флаг, указывающий, отсортирован ли объект (по умолчанию False)
# Метод для создания экземпляра родительского класса из текущего экземпляра
def to_parent(self) -> EjectedObjectDataFileNameAndObjectID:
# Возвращаем новый экземпляр EjectedObjectDataFileNameAndObjectID,
# используя атрибуты текущего экземпляра
return EjectedObjectDataFileNameAndObjectID(self.file_name, self.object_id)
# Пример использования:
# Создаем экземпляр EjectedObjectData
data = EjectedObjectData(["image1", "image2"], "some_file", 123, "some_uuid")
# Получаем экземпляр родительского класса из экземпляра потомка
parent_data = data.to_parent()
# Выводим информацию о родительском классе
print(parent_data) Я не знаю с какой стороны уже подступиться и как делать такой эффект. Я пробовал вешать position: sticky на блок и определять высоту родительского блока. Но это работает при медленном скролле, при быстром блок пролетает не успевая закончить слайдер.
Но всё оказалось не так как я предполагал и многие пишут, что джуны-программисты должны работать в офисе.
Может всё-таки можно найти удалённую работу в разработке ну или хотя бы в принципе в IT за более менее человеческую плату
Each child in a list should have a unique "key" prop
// ..
{items.map((i) => (
<React.Fragment key={i.id}>
<Item {...i}/>
</React.Fragment>
))}
// ..// ..
{items.map((i) => (
<Item key={i.id} {...i}/>
))}
// .. Содержимое сайтов будет практически одинаковым (каталог, цены).
Как пример, есть сайты:
spb.vorota-group.ru
vorota-group.ru
Они отлично ранжируются в своих регионах. Как мне сделать так же? Я в замешательстве.
Может ли метатег h2 идти сразу после h1?
Существует ли аналог Proxy и Reflect (как в JS) для Python?
class Proxy:
def __init__(self, target):
self.target = target
def __getattr__(self, name):
print(f"Пытаемся получить атрибут {name}")
if isinstance(self.target, dict):
return self.target.get(name, None)
return getattr(self.target, name, None)
def __setattr__(self, name, value):
if name == 'target':
super().__setattr__(name, value)
else:
print(f"Устанавливаем значение {value} для атрибута {name}")
if isinstance(self.target, dict):
self.target[name] = value
else:
setattr(self.target, name, value)
obj = Proxy({'x': 1})
print(obj.x)
obj.x = 2class Proxy:
def __call__(self, *args, **kwargs):
print("Объект вызван как функция")
p = Proxy()
p()obj = {'x': 1}
print(getattr(obj, 'x', None))
setattr(obj, 'x', 2)class Meta(type):
def __new__(cls, name, bases, dct):
print(f"Создается класс {name}")
return super().__new__(cls, name, bases, dct)
class MyClass(metaclass=Meta):
pass massage_handler - массаж обработчика?await message.answer вышла из чата?@dp.massage_handler()
async def echo(message: types.Message):
await message.answer(message.text)from aiogram import Bot, Dispatcher, executor, types
# Bot init
bot = Bot(token="6563641220:AAFBWH_TQ4SW_Zk-6sVyBpeX5rSJitWoRQM")
dp = Dispatcher(bot)
# echo
@dp.message_handler()
async def echo(message: types.Message):
await message.answer(message.text)
# Запуск лонг-полинг
if __name__ == "__main__":
executor.start_polling(dp, skip_updates=True) Подскажите, как лучше организовать поиск сотрудников, если их больше 2000, делать один запрос к API и получать сразу всех из БД(mysql) и среди них искать нужного или каждый раз делать поиск конкретного пользователя?
const employees = [
{
"id": 1,
"name": "Leanne Graham",
"username": "Bret",
"email": "Sincere@april.biz",
"address": {
"street": "Kulas Light",
"suite": "Apt. 556",
"city": "Gwenborough",
"zipcode": "92998-3874",
"geo": {
"lat": "-37.3159",
"lng": "81.1496"
}
},
"phone": "1-770-736-8031 x56442",
"website": "hildegard.org",
"company": {
"name": "Romaguera-Crona",
"catchPhrase": "Multi-layered client-server neural-net",
"bs": "harness real-time e-markets"
}
},
{
"id": 2,
"name": "Ervin Howell",
"username": "Antonette",
"email": "Shanna@melissa.tv",
"address": {
"street": "Victor Plains",
"suite": "Suite 879",
"city": "Wisokyburgh",
"zipcode": "90566-7771",
"geo": {
"lat": "-43.9509",
"lng": "-34.4618"
}
},
"phone": "010-692-6593 x09125",
"website": "anastasia.net",
"company": {
"name": "Deckow-Crist",
"catchPhrase": "Proactive didactic contingency",
"bs": "synergize scalable supply-chains"
}
},
]const employee = employees.find(emp => emp.id === 2); Делаю форму регистрации на Next.js, 4 страницы. Хочу ускорить загрузку страниц, но не понимаю, какой рендеринг для этого использовать
У меня есть сайт с онлайн-курсами, на котором учителя создают курсы. Ученики покупают эти курсы. Как мне теперь делать переводы учителю (выплачивать его долю) от имени моего ИП?
Я даже примерно не представляю, где об этом узнать. Может где-то чаты тематические есть?
export const routes = [
{ path: '/', element: <MainPage /> },
{
path: '/posts',
element: <Posts />,
children: [
{ path: ':postId', element: <PostIdPage /> }
]
},
{ path: '/about', element: <About /> },
{ path: '/*', element: <Error /> },
]const renderRoutes = (routes) => {
return (
<Routes>
{routes.map((route, index) => (
<Route key={index} path={route.path} element={route.element}>
{route.children && renderRoutes(route.children)}
</Route>
))}
</Routes>
);
};export default function App() {
return (
<div>
{renderRoutes(routes)}
</div>
);
}