• Бот для угадывания числа в диапазоне от 0 до 100?

    Мне кажется сделал что-то интересное... Попробуй.
    def get_n():
        try:
            number = int(input("Введите число от 0 до 100: "))
            if 0 <= number <= 100:
                return number
        except ValueError:
            pass
        print("Вы ввели неправильное число!")
        return get_n()
    
    
    def bot(n=0, r=0, d=50):
        print(f"Бот пробует число {n}, это его {r} попытка.")
        if n == number:
            print(f"Бот угадал число, число было {n}, и затратил на это {r} попыток.")
        else:
            if n < number:
                bot(n + d, r + 1, d)
            else:
                bot(n - d, r + 1, int(d / 2) if int(d / 2) > 0 else 1)
    
    
    number = get_n()
    bot()

    Единственное - иногда он повторяет значения.
    UPD: Решить эту проблему можно заменив:
    bot(n + d, r + 1, d)
    на:
    bot(n + d, r + 1, d - 1 if d - 1 > 0 else 1)
    Ответ написан
    2 комментария
  • Не работает функция! (base64) (Криптография) Как её исправить?

    sim3x
    @sim3x
    В виндовсе специфическое отношение к кодировке, потому лучше использовать wb при записи
    И по-моему при чтении также
    Ответ написан
    Комментировать
  • Какой командой расшифровать ключ зашифрованный в base64?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Очевидно, что "командой" KEY = base64.b64decode(ENCODE_KEY)
    Ответ написан
    6 комментариев
  • Можно ли эти строки привести в читабельный вид?

    igorzakhar
    @igorzakhar
    Запускаешь, вводишь строку "CC{Maybe_long_but_not_so_wise_snek}", результат "Good", при любом другом вводе "Bad".
    Зашифрованный код:
    print(["Bad","Good"][int(input() == "CC{Maybe_long_but_not_so_wise_snek}")])


    >>> s = """))'''ALkFbIzIDWE}vJ=`}vJ?ehgP>fRpMXe4yS(`@HO|F;5SGcG)GsLhMM;cf-OzbU4S<EwNMdXzMMTSMgG<ev4SKoG)G)KN-O|ukDG@nm4SH(^nMkEE-OO#kDG1uv4SfPM*GdFYMMgEE-O+MU4S@=J;OZ}zfGSvD-Ouc@ePWS`fGVQW-O%8E-Oyl1fPpA`fGtWj^M1*kDGwoAfPpT0pMjLhMMMr=eGqs3NMqJM*GrKR^MO7`EGfVm4SXbM*Gp2{+Oz{D-OsoAfPbg_nMnEI^MBiqEGYoAfPo1rEGu134S8f_fG;of-O-8wNMh{-+OkilDGvNN-OkilDGXKR^M7WqEG;u@ePeQlDG{h&4SM}_fG?bv4SxRqMM!)bfPRMMgGqUqMM@=J;Oy!SfPO7`EG)KN-OUoG)Gz7C4S|ukDG!TW-OyOP`Lqo)-O|ukDG;tv4S$m_nMjLhMMAH=eG)u@ePjKE-OiLhMMzQJ;O*JU4SvS`fGNd+MMaQJ;O1uv4SvS`fGNd+MMhQf-O*JU4SvS`fGNd+MMkuJ;O{h&4S|}@iOvd+MMSG`fG!of-OkilDGkXzMMiKE-OjRqMM|}@iO$KN-OET=eG$)AfPqg~oMq#LNMkuJ;ObRqMMFQlDGrEE-OM}_fG)oAfP)50pMzcs^MET=eGuWf-OWoC*G}yoySB2k;O%7+3Se`k;O&V-xSZ=q)G0c%;Ojnn*G;G{?Cn+VjYebR&a*?ejfYz*%aL(}ZAC+IAa<{scG7CIoWCuw6c|#ByaFD8aAB+f7b*c+nC6J*Sbn4|?C1b9)Z1U*YbP9r1b-a9)Z~B(nWt{03b-a9)ZLb#&aC+D>X'''(cеxe(cexe;cеxe sa edoced58b tropmi 46esab morf"""
    >>> s[::-1]
    "from base64 import b85decode as exеc;exec(exеc('''X>D+Ca&#bLZ)9a-b30{tWn(B~Z)9a-b1r9PbY*U1Z)9b1C?|4nbS*J6Cn+c*b7f+BAa8DFayB#|c6wuCWoIC7Gcs{<aAI+CAZ}(La%*zYfje?*a&RbeYjV+nC?{G;G*nnjO;%c0G)q=ZSx-V&O;k`eS3+7%O;k2BSyoy}G*CoWO-fWuGe=TEM^sczMp05)PfAo)Gf_}MO-EErGDlQFMMqRbO;JukMNL#qMo~gqPfA)$Ge=TEO-NK$Oi@}|MMqRjO-EKiMMzXkGDlikO-fo!Gf`GSMM+dvOi@}|S4&h{O;JukMM+dNGf`SvS4UJ*O-fQhMM+dNGf`SvS4vu1O;JQaMM+dNGf`SvS4UJ*O;JQzMMhLiO-EKjPe@u)Ge=HAMMhLjMn_m$S4vt;GDku|O-)oqL`POyO-WT!GDku|S4C7zG)GoUO-NK)GE`7OPfS!yO;J=@MMqUqGgMMRPfb)!MMqRxS4vb?Gf_}MS4&h{GDlQePe@u;GEqW7M^RKXGDlikO-NNvGDlikO+-{hMNw8-O-fo;Gf_f8S431uGEr1oPfAoYGEqiBM^IEnMn_gbPfAosO-D{zO+{2pG*MbXS4mVfGE`7OM^RKrG*MJqMN3sqGe=rMMMhLjMp0TpPfAowGDk*1M^jWtGf`ApPf1lyO-E8%O-WQVGf`SWPe@cuO-DvSGfz}ZO;J=@S4UM+O-EEgMMYFdG*MPfS4vu1GDk#OO-EEkMn^(HS4mn@GDku|O-NK)G)GoKS4ve<GgMSTMMzXdMNwE<S4UbzO-fc;MMhLsG)GcGS5;F|OH@`(Sy4eXMpRf>Pghe?Jv}`=Jv}EWDIzIbFkLA'''))"
    >>> from base64 import b85decode as exеc
    >>> exеc('''X>D+Ca&#bLZ)9a-b30{tWn(B~Z)9a-b1r9PbY*U1Z)9b1C?|4nbS*J6Cn+c*b7f+BAa8DFayB#|c6wuCWoIC7Gcs{<aAI+CAZ}(La%*zYfje?*a&RbeYjV+nC?{G;G*nnjO;%c0G)q=ZSx-V&O;k`eS3+7%O;k2BSyoy}G*CoWO-fWuGe=TEM^sczMp05)PfAo)Gf_}MO-EErGDlQFMMqRbO;JukMNL#qMo~gqPfA)$Ge=TEO-NK$Oi@}|MMqRjO-EKiMMzXkGDlikO-fo!Gf`GSMM+dvOi@}|S4&h{O;JukMM+dNGf`SvS4UJ*O-fQhMM+dNGf`SvS4vu1O;JQaMM+dNGf`SvS4UJ*O;JQzMMhLiO-EKjPe@u)Ge=HAMMhLjMn_m$S4vt;GDku|O-)oqL`POyO-WT!GDku|S4C7zG)GoUO-NK)GE`7OPfS!yO;J=@MMqUqGgMMRPfb)!MMqRxS4vb?Gf_}MS4&h{GDlQePe@u;GEqW7M^RKXGDlikO-NNvGDlikO+-{hMNw8-O-fo;Gf_f8S431uGEr1oPfAoYGEqiBM^IEnMn_gbPfAosO-D{zO+{2pG*MbXS4mVfGE`7OM^RKrG*MJqMN3sqGe=rMMMhLjMp0TpPfAowGDk*1M^jWtGf`ApPf1lyO-E8%O-WQVGf`SWPe@cuO-DvSGfz}ZO;J=@S4UM+O-EEgMMYFdG*MPfS4vu1GDk#OO-EEkMn^(HS4mn@GDku|O-NK)G)GoKS4ve<GgMSTMMzXdMNwE<S4UbzO-fc;MMhLsG)GcGS5;F|OH@`(Sy4eXMpRf>Pghe?Jv}`=Jv}EWDIzIbFkLA''')
    b'import codecs;exec(codecs.getencoder(\'rot-13\')("sebz onfr64 vzcbeg o32qrpbqr nf rkr\xd1\x81;rkrp(rkr\xd1\x81(\'ZI4TXLMVZW4KVMYOBWMTP6WBZMMT63YVZI4PDWMJTL3GRAGTTMFQRZOJTV3QPAMGTL2GTAEGTDMQNAEMTMFQBZOJZL3GRAMHTVLQZZEGTLMGVAEHTL2GZZMJZL3QVAEITVLQZZWKTZMQNAEIT43QZZWGTRMJRAEIT43QZZWJZZMQDAEIT43QZZWGTRMQDZEFTLMGVBOHZR3GNAEFTMFGXZWJZL2GBAMMTEDGVZMIUR2GBAWETL4GVLMHTZ2TPAOLTLMQTZEGUR3TRAOMTMEGTZWJTV3QPAWKTZ2GTZOHZV2QBAGQT42GZZMHUN2GZZMDTEEQVZMJZV3QBAWDTH2QTZOJT42QFAGPTEFGVAOJTHMGNZMETL4QZAWIT42TPAGQTH4QTZEKUN3GZAEFTMFQZAOJTL2GFAGSTH3QTZOIUNMGRZMIT43QZAOHTLMGFA3OTLMQTZWGURMGTAEETH4QVMWJZZ2GDZMGTEFGBAWIZR2GBAMHTZ4GVBWJUR3TTAEHTEEQXZWGZDMJVZEFTV4GRBWUSRKTVMYQA5FTXXOWSR======\'))")[0])'
    >>> import codecs
    >>> codecs.getencoder('rot-13')("sebz onfr64 vzcbeg o32qrpbqr nf rkr\xd1\x81;rkrp(rkr\xd1\x81(\'ZI4TXLMVZW4KVMYOBWMTP6WBZMMT63YVZI4PDWMJTL3GRAGTTMFQRZOJTV3QPAMGTL2GTAEGTDMQNAEMTMFQBZOJZL3GRAMHTVLQZZEGTLMGVAEHTL2GZZMJZL3QVAEITVLQZZWKTZMQNAEIT43QZZWGTRMJRAEIT43QZZWJZZMQDAEIT43QZZWGTRMQDZEFTLMGVBOHZR3GNAEFTMFGXZWJZL2GBAMMTEDGVZMIUR2GBAWETL4GVLMHTZ2TPAOLTLMQTZEGUR3TRAOMTMEGTZWJTV3QPAWKTZ2GTZOHZV2QBAGQT42GZZMHUN2GZZMDTEEQVZMJZV3QBAWDTH2QTZOJT42QFAGPTEFGVAOJTHMGNZMETL4QZAWIT42TPAGQTH4QTZEKUN3GZAEFTMFQZAOJTL2GFAGSTH3QTZOIUNMGRZMIT43QZAOHTLMGFA3OTLMQTZWGURMGTAEETH4QVMWJZZ2GDZMGTEFGBAWIZR2GBAMHTZ4GVBWJUR3TTAEHTEEQXZWGZDMJVZEFTV4GRBWUSRKTVMYQA5FTXXOWSR======\'))")
    ...
    ...

    И так далее по цепочке.
    Ответ написан
    3 комментария