1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Python3 6.Boolean,Инструкция If

Тема в разделе "Python", создана пользователем gx6060, 15 окт 2016.

Метки:
  1. gx6060

    gx6060 Python

    Репутация:
    1
    Регистрация:
    21 сен 2016
    Сообщения:
    39
    Симпатии:
    53
    1.Boolean

    Python содержит класс "bool" который используется для выражения условной логики в коде. Класс "bool" возвращает два значения "True" или "False" (истина или ложь), любое не пустое и не нулевое значение является (True), ноль или пустой объект равняется (False).
    Возможность добавлять целые числа в списке которые больше определенного значения в другой список.
    Выводить из списка только строковые\целые\дробные значения.
    Сравнение двух переменных и использование их неравенства\равенства и тд как условие для последующего кода
    Для операции поместите оператор "bool" между переменными, сравнивать возможно целые числа\дробные\строки\списки , а так же присвоить результат сравнения переменной

    Операторы "bool"

    "==" если значения равны возвращает "True", иначе "False"
    Код:
    >>> 1 == 1
    True 
    Код:
    >>> 2 == 1
    False 
    "!=" если значения не равны то "True", иначе "False"
    Код:
    >>> 2 != 1
    True 
    Код:
    >>> 1 != 1
    False 
    ">" если первое значение больше второго "True", иначе "False"
    Код:
    >>> 2 > 1
    True 
    Код:
    >>> 1 > 2
    False 
    "<" если первое значение меньше второго "True", иначе "False"
    Код:
    >>> 1 < 2
    True 
    Код:
    >>> 2 < 1
    False 
    ">=" если первое значение больше или равно второму "True", иначе "False"
    Код:
    >>> 3 >= 2
    True 
    Код:
    >>> 2 >= 2
    True 
    Код:
    >>> 2 >= 3
    False 
    "<=" если первое значение меньше или равно второму "True" иначе "False"
    Код:
    >>> 1 <= 2
    True 
    Код:
    >>> 2 <= 2
    True 
    Код:
    >>> 3 <= 2
    False 
    Пример со строками:
    Код:
    >>> "one" == "one"
    True 
    Код:
    >>> "one" == "two"
    False 
    Код:
    >>> "one" != "two"
    True 
    Код:
    >>> "one" != "one"
    False 
    Со списками
    Код:
    >>> ["one", "two", "three", "four"] == ["one", "two", "three", "four"]
    True 
    Код:
    >>> ["one", "two", "three"] == ["one", "two", "three", "four"]
    False 
    Сравнение по длине списка
    Код:
    >>> list_one = [1, 2, 3, 4, 5]
    >>> list_two = [1, 2, 3, 4, 5, 6]
    >>> len(list_one) == len(list_two)
    False 
    Код:
    >>> len(list_one) < len(list_two)
    True 
    Сравнение по индексу числового списка
    Код:
    >>> int_list = [1, 2, 3, 4, 5]
    >>> int_list[0] < int_list[4]
    True 
    Код:
    >>> int_list[0] > int_list[4]
    False 
    Присвоение переменной результата сравнения:
    Код:
    >>> x = ( 1 < 2)
    >>> x
    True 
    Код:
    >>> y = (1 > 2)
    >>> y
    False 
    2.Инструкция if

    Python содержит инструкцию if которая позволяет реализовать логическое ветвление.
    Состоит инструкция из обязательной части if и двух необязательных elif и esle.
    Часть if проверяет условие , если условие истинно то выполняется вложенный блок части if иначе часть if пропускается.
    Далее следует необязательная часть elif , если условие части if ложно, но истинно для части elif то выполняется вложенный блок части elif иначе часть elif пропускается
    Последней следует необязательная часть else которая не содержит условия , выполняется если условия частей if и elif были ложны
    Код:
    if (условие1):  # двоеточие обязательно
        Вложенный блок части if # отступ в 4 пробела или 1 табуляция
    elif(условие 2\альтернативное условие):
        Вложенный блок части elif # отступ в 4 пробела или 1 табуляция
    else: (без условия)
        Вложенный блок части else # отступ в 4 пробела или 1 табуляция 
    Код:
    if 1: # так как единица всегда True
        print("True") 
    Сравнение двух переменных , если условие верно то выполняется вложенный блок части if
    Код:
    x = 2
    y = 3
    two_values = (x < y)
    if two_values:
        print(x, "меньше", y) 
    Так же возможно записать инструкцию другим способом
    Код:
    x = 2
    y = 3
    if x < y:
        print(x, "меньше", y)
    Пример if\else:
    Код:
    x = 2
    if x == 1:
        print("True")
    else:
        print("False")
    Пример if\elif:
    Код:
    x = 3
    y = 4
    if x > y:
        print(x, "больше", y)
    elif x < y:
        print(x, "меньше", y) 
    Пример if\elif\else:
    Код:
    player_charm = 6
    min_charm = 5
    charm_need = 15
    if player_charm >= charm_need:
        print("Вам удалось уговорить НПС")
    elif charm_need > player_charm >= min_charm:
        print("Вы узнали некоторые сведения")   
    else:
        print("Попытка не удалась") 
    Как это работает:
    Переменной player_charm присвоено значение 6 , если переменная player_charm больше или равна переменной charm_need то выполняется вложенный блок части if , если переменная player_charm меньше переменной charm_need то вложенный блок части if пропускается.
    Если же переменная player_charm меньше переменной charm_need но при этом больше переменной или равна min_charm то выполняется вложенный блок части elif
    Если обе части if/elif были пропущены , выполняется вложенный блок части else

    Инструкция if для цикла for
    Использование инструкции if для нахождения определенного элемента в списке, присвоение элемента переменной и вывод функцией print()
    Код:
    str_list = ["one", "two", "three", "four", "five"]
    for value in str_list:
        if value == "four":
             element =  value
    print(element)
    'four' 
    Индекс необходимого элемента списка указанного в условии :
    Код:
    str_list = ["one", "two", "three", "four", "five"]
    counter = 0 # счетчик
    index = 0
    for valie in str_list:
        if value == "four":
            index = counter
        counter += 1 # если итерация прошла а условие не было выполнено
    # счетчик + 1
    print(index) 
    Определение какой элемент в списке целых чисел больше или меньше указанного в условии и сортировка их по спискам согласно условию
    Код:
    int_list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    greater_5 = [] 
    lower_5 = []
    for value in int_list:
        if value > 5:
            greater_5.append(value)
        elif value < 5:
            lower_5.append(value)
        else:
             five = value
    print(greater_5)
    print(lower_5)
    print(five) 
    to be continued...
     
    #1 gx6060, 15 окт 2016
    Последнее редактирование: 15 окт 2016
    Vander и WebWare Team нравится это.
  2. rrrFer

    rrrFer Гость

    Репутация:
    0
    Я не уверен. Дробные числа на равенство вообще сравнивать нельзя. Если это не константы, то они никогда не равны друг другу, т.к. есть мусор в младших разрядах.

    Берешь cos(45) и sqrt(2)/2. Сравниваешь. Должны быть равны, но врядли это случится.
     
  3. rrrFer

    rrrFer Гость

    Репутация:
    0
    В качестве примера (практического) к статье можно было бы написать простую игрушку. Например, компьютер загадывает число в диапазоне, юзер пытается угадать. Если не угадывает, то компьютер сообщает больше число или меньше. Это и циклы, и условия. Если хочется больше условий - можно ограничить число попыток, а если хочется составных условий - можно добавить проверку принадлежности ответа юзера заданному диапазону. Можно добавить ввод пользователем границ диапазона и проверку их корректности (чтобы A было меньше B - если больше, то числа можно поменять местами, например).

    Вобщем не хватает практического примера и ИМХО слишком затянуто вот это 1 == 1, 1==2, 1 !=2, 1 < 2, ... Лучше сразу на хорошем примере все это показать, на мой взгляд.
     
  4. gx6060

    gx6060 Python

    Репутация:
    1
    Регистрация:
    21 сен 2016
    Сообщения:
    39
    Симпатии:
    53
    Очень интересно , питон сообщает что косинус 45 и близко не лежал там) хотя да по идее они равны
    Код:
    >>> math.cos(45)
    0.5253219888177297
    Код:
    >>> math.sqrt(2)/2
    0.7071067811865476
     
  5. gx6060

    gx6060 Python

    Репутация:
    1
    Регистрация:
    21 сен 2016
    Сообщения:
    39
    Симпатии:
    53
    Тогда лучше создать тему , где юзеры будут мерятся скриптами написанными на основе полученной информации , не давать же им все сразу готовое или же предлагать задание в конце каждой темы
     
  6. rrrFer

    rrrFer Гость

    Репутация:
    0
    Там наверное не в градусах, а в радианах значения задаются. Я образно написал. При переводе градусов в радианы вы еще раз получите погрешность, кстати, т.е. результаты будут отличаться еще сильнее.
     
  7. gx6060

    gx6060 Python

    Репутация:
    1
    Регистрация:
    21 сен 2016
    Сообщения:
    39
    Симпатии:
    53
    да я уже проверил , и удалил из темы сравнение дробных чисел
     
    rrrFer нравится это.
Загрузка...

Поделиться этой страницей