Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
2 / 1 / 1
Регистрация: 24.10.2019
Сообщений: 18

Почему не работает условный оператор который по идее должен работать

04.01.2020, 01:59. Показов 2343. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте есть такой код . Суть в том что человек вводит команду Казино [сумма] программа проверяет правильно ли введена команда через if и далее там присваивает переменной ставка значение сумма, крутит рулетку через рандом и т.д . Но у меня появилась проблема s - Это условно команда введёная пользователем я проверил через print() все условия и все условия = True но print('nice') всё равно не выполняется почему ?
Python
1
2
3
4
s = 'Казино 228'
print(type(int(s[7])) == int)
if s[0].lower() == 'к' and s[1].lower() == 'a' and s[2].lower() == 'з' and s[3].lower() == 'и' and s[4].lower() == 'н' and s[5].lower() == 'о' and type(int(s[7])) == int:
    print('nice')
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.01.2020, 01:59
Ответы с готовыми решениями:

Почему не работает код? (По идее должен считать количество цифр в числе)
echo "Please enter a number: "; $num = (int)trim(fgets(STDIN)); $counter=0; while ($num > 0) { $num/=10; echo "$num...

Почему не работает условный оператор
Dim A, B, C As String Private Sub Command1_Click() Form1.Visible = False A = InputBox("Сколько лет ученику 11'A' класса Казакову...

не работает файл,который должен работать
На странице появляются крякозябры. Нормальный вид страница принимает только после добавления в код: Вот мой код: <!DOCTYPE...

6
 Аватар для GulgDev
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,071
04.01.2020, 06:41
Python
1
2
3
s = 'Казино 228'
if s.lower() == 'казино 228':
    print('nice')
Добавлено через 42 секунды
Что ты тут намудрил?! Зачем каждый символ проверять-то?

Добавлено через 7 минут
Как ты думаешь, какой это тип? Ты же сам превратил строку в чило. Зачем тогда проверять тип?
Запись
Python
1
type(int(s[7])) == int
тоже самое, что и
Python
1
int == int
0
Эксперт Python
1356 / 653 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
04.01.2020, 12:49
Deventeex, Вам так:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def test(mstr, n):
    print(mstr)
    print(n)
    if mstr == 'kasino' and mstr.islower() and n.real:
        print('слово=' + mstr, 'ставка=' + str(n))
        res = True
        print('Nice')
    else:
        res = False
        print('Bad')
 
 
if __name__ == '__main__':
    mstr = input()
    n = float(input())
    test(mstr, n)
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
04.01.2020, 13:31
Цитата Сообщение от Deventeex Посмотреть сообщение
все условия = True
Python
1
2
3
4
5
6
7
print(s[0].lower() == 'к')
print(s[1].lower() == 'a') # это не русская "а"
print(s[2].lower() == 'з')
print(s[3].lower() == 'и')
print(s[4].lower() == 'н')
print(s[5].lower() == 'о')
print(type(int(s[7])) == int)
Code
1
2
3
4
5
6
7
True
False
True
True
True
True
True
P.S. Такие проверки никто не делает. Это глупо. Длинно. Нечитабельно.
Длина строки кода должна быть не более 80 символов.


Python
1
type(int(s[7])) == int
Если строка не сконвертируется в int - будет exception. Если сконвертируется - значит все и так OK и проверка бессмысленна.
0
Эксперт Python
1356 / 653 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
04.01.2020, 14:15
Garry Galler, я осознаю, что тут проверка,ради проверки, но, коль уж ее ТС надо, я помог, по поводу применимости и рациональности, вопрос к Deventeex,
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
04.01.2020, 14:23
Лучший ответ Сообщение было отмечено Deventeex как решение

Решение

Цитата Сообщение от Dax Посмотреть сообщение
по поводу применимости и рациональности, вопрос к Deventeex
Так я как раз о его посимвольном способе. Потому что можно же проще - split по пробелам
Python
1
2
3
4
5
6
7
8
9
>>> s = 'Казино 228'
>>> s,n = map(str.lower,s.split())
>>> s
'казино'
>>> n
'228'
>>> s in "казино" and n.isdigit()
True
>>> # дальше n можно в int преобразовать и использовать где нужно
1
Эксперт Python
1356 / 653 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
04.01.2020, 14:37
Garry Galler, спасибо, запомню.
С наступившими Вас.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.01.2020, 14:37
Помогаю со студенческими работами здесь

При нажатии кнопки работает код,который не должен работать
Всем привет. Суть такова: когда человек заходит на страницу проверяется существование переменной, если она есть - выполняется exit(); ...

Почему TStringList считает с 1 а не с 0 - как "по идее должен"
Вывожу общее количество всех таблиц базы MySQL в Label и получаю "реальное" значение. var tablenames: TStringList; i:...

Условный оператор: Вычислить заданное целочисленное выражение, используя условный оператор IF
Вычислить заданное целочисленное выражение для данных a,b в формате INTEGER, используя условный оператор IF. ...

Условный оператор, который эквивалентен оператору присваивания
Ув. пользователи форума, столкнулся с проблемой: не могу решить 3 маленькие задачи. Помогите пожалуйста, кто знает: №3. Условный...

написал алгоритм который должен переворачивать число,(например вводим 321 должен вывести 123) но он не работает
#include <iostream> using namespace std; int main() { int x,a,k=1,y=0,t; cin>>x; t=x; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru