cookie

We use cookies to improve your browsing experience. By clicking «Accept all», you agree to the use of cookies.

avatar

Kings Of Python

🐍 Pythonda songi va tarqalmagan kodlar kanali: @KingsOfPy ⚙️ JavaScriptda so'ngi va tarqalmagan kodlar kanali: @Kings_of_Js Admin : @Mistrdev Admin : @MrGayratov

Show more
Advertising posts
916
Subscribers
No data24 hours
+47 days
+1030 days

Data loading in progress...

Subscriber growth rate

Data loading in progress...

Photo unavailableShow in Telegram
18da eng yoqgani shu va calculator boldi sizdachi?
Show all...
😁 6
⚠️ Hozirda ko’pchilikni qiynaga muammo: 😱 Telegra.ph ga endi rasm yuklab bo’lmayabdi qayerdan endi bunday service topaman ? Bunga yechim oddiy:
pip install photolink
pypi.org
Show all...
👍 2
Photo unavailableShow in Telegram
kodi frontendda gpt dasturchi😂
Show all...
😁 2👍 1
Show all...
GitHub - xudoberdigayratov/GptDjangoAiogramWebApp

Contribute to xudoberdigayratov/GptDjangoAiogramWebApp development by creating an account on GitHub.

Repost from IT Tech | 🇺🇿
#optimize_code Hozir aiogramda bir skript yaratgan edim, aiogramda ishni ancha qulay qiladi
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton


class KeyboardBuilder:
    __row__: int
    __reverse__: bool

    def __init_subclass__(cls, row: int, reverse: bool) -> None:
        cls.__row__ = row
        cls.__reverse__ = reverse

    def __new__(cls) -> ReplyKeyboardMarkup:
        keyboards = [[]]
        buttons = cls.__dict__

        for key, value in buttons.items():
            if not key.startswith("__") and isinstance(value, str):
                if len(keyboards[-1]) == cls.__row__:
                    keyboards.append([])
                keyboards[-1].append(KeyboardButton(text=value))

        if cls.__reverse__:
            keyboards = keyboards[::-1]
        return ReplyKeyboardMarkup(keyboard=keyboards, resize_keyboard=True)
Ushbu klass, reply keyboardlarni tezkor yaratish va filtrlash imkonini beradi, negadir hozircha pycharm meni kodimni tanimayapti, lekin kod xatosiz ishlamoqda. Undan foydalanish quyidagicha
class StartMenu(KeyboardBuilder, row=2, reverse=True):
    sign_up = 'Ro\'yxatdan o\'tish'
    sign_in = 'Kirish'
    statistics = 'Statistika'
Bu yerda row=2 => 2qatorli menyu yaratildi, tugmalar soni 3ta bo'lgani uchun, bitta tugma alohida qoladi, reverse esa teskari tartiblaydi ya'ni 1-yakka tugma statistika bo'lsa, pastda qolgan 2tasi, agar reverse bo'lmasa statistika oxirida yakka qoladi. Foydalanish esa quyidagicha:
await message.answer('Yana bir bor assalomu alaykum!', reply_markup=StartMenu())
Tugmalarni filterlash ham oson
@dp.message(F.text == StartMenu.statistics)
Pycharm biroz tanimay, qizg'ish tursa ham, yaxshi optimizatsiya. Just use it!
Show all...
👍 5🔥 2
Nahotki hech kim oramizda Telegram Mini app yoza olmasa akalar? Frontchilar bormi yorvoradigan?
Show all...
Telegram Mini app kodlashni yorvoradigan bratla bormi? Oziga ishongan Alpomishde zabardast sherik kerak menga. Zakazlarni frontini qilishga. 😁😅
Show all...
3
Bayramila bilan.
Show all...
Photo unavailableShow in Telegram
hello
Show all...
👍 9
Photo unavailableShow in Telegram
Obunachilarni yashirish ham qoshilibdi ✅🎉 qancha boldi bilmadimu endi men hursand😅
Show all...
Choose a Different Plan

Your current plan allows analytics for only 5 channels. To get more, please choose a different plan.