LINUX.ORG.RU

Но нет, её нет и приходится городить в цикле if.

Выбирай:

while True:
    code
    if not condition:
        break
done = False                                                                    
while not done:                                                                 
    code                                                                       
    done = condition

Я использую второй вариант.

Crocodoom ★★★★★
()
Ответ на: комментарий от Virtuos86

Что за п-ц ты принес :) Вот так питонисты вечно изобретают какую-то бредятину на ровном месте.

bread
()
Ответ на: комментарий от Crocodoom
resp = False
resp = requests.get("govnokakoeto")
print(resp.status_code)
500

while not resp.text:
    No 'text' attribute

while not resp:
    в цикл не войдет, т.к. есть 500 код.
steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от vvn_black

Это просто пример. Я try except класс сделал давно.

steemandlinux ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Почему print без скобочек?!

Эту форму использования iter в 3-ем питоне никто не использует. Я её и со вторым-то использовал ровно 3 раза: один раз, когда прочитал о ней, и пару раз бросил пыль в глаза тем, кто доки читал плохо).

Virtuos86 ★★★★★
()
Ответ на: комментарий от anonymous

Почему print без скобочек?!

Fatal error! Охужэтот пистон, лол.

anonymous
()
Ответ на: комментарий от bread

Щас бы любителю сишки пояснять за удобство. Даже пердоновский каскад ифов короче и проще в написании, чем сишные свичкейсы.

    a = var * 100500 + that_var * other_var
    if a == 1:
        do_smth()
    elif a == 2:
        do_smth_else()
    elif a == 3:
        do_blahblah()
    switch (var * 100500 + that_var * other_var) {
    case 1:
        do_smth();
        break;
    case 2:
        do_smth_else();
        break;
    case 3:
        do_blahblah();
        break;
    }
Про универсальность вообще молчу:
if my_str == "ololo":
    do_smth()
elif my_str == "azaza":
    do_smth_else()
switch (my_str) {
    case "ololo":
// Wait... Oh, sh~

Esper
()
Ответ на: комментарий от Esper

Паттерн-матчинг не обязательно должен быть настолько тупым. Но конечно портянки if..elif универсальнее, не спорю. Выглядит это только как говно, ну что поделать, суровый солдатский питон.

bread
()
Ответ на: комментарий от bread

Свичкейс в Си и куче языков, позаимствовавших его оттуда как есть, выглядит не лучше. Просто ты привык к тамошнему бойлерплейту, а к питоновскому - не привык. Я бы предпочёл, чтобы во всех языках был няшный паттерн-матчинг вроде рустовского, но такова уж суровая солдатская жизнь в интырпрайзе.

Esper
()
Ответ на: комментарий от pawnhearts

Не, лучше уж портянки, а то кодеры на поддержке потом обрадуются сильно. Поиск по хэштаблице конечно может заменить иногда простой switch, но лучше бы в языке это было из коробки. Но нет, так нет. В posix shell вот много чего нет, я ж не жалуюсь. Просто питон зачем то сломали, но ничего не дали, кроме скобочек для принта. Странное сообщество.

bread
()

Потому что не нужно плодить сущности

Dred ★★★★★
()

Почему в питоне нет do..while?

Гвидо так сказал.

Не pythonic‐way.

Уже лишняя сущность.

И ещё 9999 различных вариантов.

IchBinFertig
()
Ответ на: комментарий от Esper

Я бы предпочёл, чтобы во всех языках был няшный паттерн-матчинг вроде рустовского

Enjoy Haskell/Idris/Agda.

IchBinFertig
()
Ответ на: комментарий от makoven

goto label иногда не хватает

Так поищи в сети, как с помощью кастомного энкодера запилить метки.

Выглядеть это будет примерно так:

# coding: with-goto

…

Хотя это, конечно, боян.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Rodegast

Кто о чём, а борщехлёбы о своих манадах.

anonymous
()
Ответ на: комментарий от IchBinFertig

Ага, если скриптить, например, какую-нибудь автоматизацию, то Питон чисто функциональному языку непременно проигрывает. В чьей-то наркоманской вселенной так и есть.

anonymous
()

Нет потому что Гвидо решил что хватит того что есть

anonymous
()
Ответ на: комментарий от anonymous

Ага, если скриптить, например, какую-нибудь автоматизацию, то Питон чисто функциональному языку непременно проигрывает. В чьей-то наркоманской вселенной так и есть.
скриптить автоматизацию
Питон
автоматизацию
Питон

Питон в автоматизации куску дерева проигрывает.

IchBinFertig
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.