×

Python And Operator

Python's and operator takes two operands that can be either object, Boolean expressions, or both. And operator creates more complex expressions using those operands. Conditions are the common name for the operands in and expression. And expression yields a true result if both requirements are satisfied. Otherwise, a false result is returned:

Code:

print(True and True )
print(False and False )
print(True and False )
print(False and True )

Output:

Python And Operator
  • These illustrations demonstrate that and expression only return True if both operands are true. And operator is a binary operator since it requires two operands to create an expression.

The few illustrations above demonstrate and operator's truth table.

operand1operand2operand1 and operand2
TrueTrueTrue
TrueFalseFalse
FalseFalseFalse
FalseTrueFalse

This table lists the truth value of a Boolean expression with operand1 and operand2 as examples. The truth values of the operands of the expression influence its result. If both are true, it will be true. It will be untrue if not. The general reasoning behind the and operator is as follows. In Python, this operator is capable of more, though.

Using Python and Operator with Boolean Expressions

To create compound Boolean expressions, combinations of variables and values that result in a Boolean value, you'll often utilize logical operators. Boolean expressions thus return True or False.

Common examples of this kind of expression include comparisons and equality tests:

print(6 == 3 + 3)
print(7 > 5 )
print(4 < 3 )
print(22 != 78 )
print([4, 9] == [4, 9] )
print("Ban" == "Tank" )

Output:

Python And Operator

These are all Boolean expressions since they all have a True or False return value. And keyword can be used to combine them to construct compound expressions that test two or more sub expressions simultaneously:

Code:

print(6 > 3 and 6 == 3 + 3)
print(7 < 2 and 7 == 7)
print(4 == 4 and 9 != 9)
print(3 < 2 and 6 != 6)

Output:

Python And Operator

In this case, combining two True expressions yields another True expression. All other combinations give False results. These examples show that the syntax for building compound Boolean expressions using and operator is as follows:

expression1 and expression2

If both expressions 1 and 2 evaluate as True, the compound expression is True. If at least one subexpression evaluates to False, the result is False.

When creating a compound expression, there is no restriction on how many and operators you can employ. This indicates that you can combine more than two subexpressions in a single expression by using multiple and operators:

Code:

print(7 > 3 and 7 == 3 + 4 and 8 != 3)
print(8 < 3 and 0 == 3 and 5 != 4)

Output:

Python And Operator

Once more, you get True if the evaluation of all the sub expressions is True. If not, you receive False. It would be best if you remembered that Python evaluates the expressions progressively from left to right, especially as the expressions grow longer.

Short-Circuiting the Evaluation

  • The logical operators 'and' and 'or' in Python employ a technique known as short-circuit evaluation, also referred to as lazy evaluation. The operand on the right is only evaluated by Python when it is necessary, to put it another way.
  • Python determines the final result after evaluating the left operand of the and expression. If it is false, the entire expression is false. In this instance, it is not necessary to evaluate the operand on the right. Python is already aware of the outcome.
  • The entire expression is inherently false if the left operand is false. Evaluating the final operand would be a waste of CPU time. Python avoids this by stopping the evaluation midway through.
  • • The right operand is only evaluated by and operator, in contrast, if the first operand is true. The truth value of the right operand, in this instance, determines the outcome. The entire expression is true if it is true. Otherwise, the statement is untrue.
  • Check out the examples below to see how the short-circuiting feature works:

Code:

def true_function():
 print("Running true_function()")
 return True
def false_function():
 print("Running false_function()")
 return False
print(true_function() and false_function())
print(false_function() and true_function())
print(false_function() and false_function())
print(true_function() and true_function())

Output:

Python And Operator
  • And operator behaves lazily in the first expression as predicted. The second function is not evaluated because the outcome of the first function's evaluation is false. Although the first function returns False in the second statement, the bitwise AND operator (&) eagerly performs both functions. Take note that the outcome is False in both situations.

Using Python and Operator with Common Objects

Use and operator to combine two Python objects into a single expression. In that case, Python's internal bool() function is used to determine the operands' truth values. You consequently receive a particular object rather than a Boolean value. Only when an operand explicitly evaluates to True or False do you receive True or False:

Code:

print(3 and 4)
print(6 and 0.0)
print([] and 5)
print(0 and {})
print(False and "")

Output:

Python And Operator

In these instances, if the and expression evaluates to False, it returns the operand on the left. If not, the operand on the right is returned. And operator determines an object's truth value using internal Python rules to produce these results.

  • Here is a summary of how the and operator behaves when applied to ordinary Python objects instead of Boolean expressions. Note that Python determines the outcome by using the truth value of each object:
object1object2object1 and object2
FalseFalseobject1
FalseTrueobject1
TrueTrueobject2
TrueFalseobject2

Generally, if an and expression's operands are objects rather than Boolean expressions, the operator yields the object on the left if the expression evaluates to False. The item on the right is still returned even if it evaluates to False.

Mixing Boolean Expressions and Objects

Additionally, you can use an and expression to combine Boolean statements with typical Python objects. The and expression continues to return the left operand if that condition is true; otherwise, it returns the right operand. Depending on which component of the expression yields that result, the returned value could either be True, False or an ordinary object:

Code:

print(6 < 7 and 6)
print( 6 and 6 < 7)
print( 4 < 6 and [])
print([] and 4 < 6)
print(7 > 11 and {})
print({} and 7 > 11)
print(6 > 9 and 5)
print(5 and 6 > 9)

Output:

Python And Operator

These examples combine the use of common objects and Boolean expressions. You can see that for each set of examples; you can either get a non-Boolean object or a Boolean value, either True or False. Which component of the expression yields the final result will determine the outcome.

Here is a table summarizing how and operator behaves when Boolean expressions and specific Python objects are used together:

expressionobjectexpression and object
TrueTrueobject
TrueFalseobject
FalseFalseFalse
FalseTrueFalse
  • Python calculates the result by evaluating the Boolean expression on the left and obtaining its Boolean value (True or False). The truth value of the object on the right is then determined by Python using its internal rules.

Combining Logical Operators in Python

  • Python also provides or operator and the not operator as additional logical operators.
  • They can be combined with and operator to form more sophisticated compound expressions.
  • The precedence of each logical operator must be considered when creating accurate and understandable expressions using numerous logical operators. To put it another way, you must consider the order in which Python executes them.

Compared to other operators, the logical operators in Python have low precedence. To achieve a consistent and readable outcome, it's advisable to employ a pair of parentheses (()) occasionally:

Code:

print(6 or 3 and 7 > 1)
print((6 or 4) and 7 > 1)

Output:

Python And Operator
  • In these instances, a compound phrase is created by combining the 'or' and 'and' operators. Or operator takes advantage of short-circuit evaluation, just like and operator. Or operator, in contrast to and, terminates when it encounters a valid operand. This is seen in the first illustration. Or sub expression returns 6 immediately without assessing the rest of the expression because 6 is true.
  • Or sub expression, however, operates as a single true operand when enclosed in a pair of parentheses, and 7> 1 is also evaluated. The conclusion is True.

Using Python and Operator in Boolean Contexts

And operator, like all of Python's Boolean operators, is particularly helpful in Boolean settings. Most Boolean operators' real-world usage cases can be found in Boolean settings.

Boolean Contexts are defined by Two Primary Structures in Python:

  1. If statements: Let you perform conditional execution and take different courses of action based on the result of some initial conditions.
  2. While statement: Allow you to do repetitive operations while a certain condition is true and perform conditional iteration.

What you might refer to as control flow statements include these two forms. They aid in determining the course of your program’s execution.

In both if statements and while loops, you can create compound Boolean expressions using Python's and operator.

  • while Loops
    The second structure that allows and expressions to be used to control how a program is executed is the while loop. The while statement header's 'and' operator enables you to test several assumptions and continue the loop's code block until all assumptions are satisfied.

Code:

from time import sleep
from random import randint


def control_pressure():
    pressure = measure_pressure()
    while True:
        if pressure <= 500:
            break


        while pressure > 500 and pressure <= 700:
            run_standard_safeties()
          pressure = measure_pressure()


        while pressure > 700:
            run_critical_safeties()
            pressure = measure_pressure()


    print("Wow! The system is safe...")


def measure_pressure():
    pressure = randint(490, 800)
    print(f"psi={pressure}", end="; ")
    return pressure


def run_standard_safeties():
    print("Running standard safeties...")
    sleep(0.2)


def run_critical_safeties():
    print("Running critical safeties...")
    sleep(0.7)


if __name__ == "__main__":
    control_pressure()

Output:

Python And Operator

On line 8 of control pressure(), you add an endless while loop. The conditional statement exits the loop, and the program is completed if the system is stable and the pressure is less than 500 psi.

Line 12 has a first nested while loop that executes the regular safety procedures while maintaining a system pressure of between 500 and 700 psi. The loop receives a new pressure measurement after each iteration to retest the situation. The second loop on line 16 executes the crucial safety measures if the pressure exceeds 700 psi.

  • If Statements
  • Boolean expressions are frequently referred to as conditions since they frequently suggest the necessity of fulfilling a specific criterion.
  • They are quite helpful when used with conditional statements. Such a sentence starts with the Python keyword if and goes on to include a condition.
  • Conditional statements may also contain elif and else clauses.
    The logic of conditionals in English grammar is followed by conditional statements in Python. If code block runs if the condition is met. If not, the execution moves on to another code block:

Code:

x = -11
if x < 0:
 print("x is negative")
elif x > 0:
 print("x is positive")
else:
 print("x is equal to 0")

Output:

Python And Operator
  • The statement "x<  0" is true because it contains a negative value. The if code block executes, and the screen displays the message "x is negative." However, if you alter the value of a to a positive number, the elif block will activate, and Python will print that it is positive. Lastly, if you set a to zero, the else code block executes. Try different things and see what happens.
  • Let's imagine that before running a certain piece of code, you want to confirm that two criteria are satisfied—that is, they are both true.

Code:

age = int(input("enter your age: " ))
if age >= 0 and age <= 9:
 print("You are a child!")
elif age > 9 and age <= 18:
 print("You are an adolescent!")
elif age > 18 and age <= 65:
 print("You are an adult!")
elif age > 65:
 print("Golden ages!")

Output:

Python And Operator
  • Here, input() is used to obtain the user's age, and int is used to convert it to an integer value (). It is used to determine whether age is higher than or equal to 0. The same clause determines if the applicant's age is nine or less. You construct a composite Boolean expression to accomplish this.
  • To establish the life stage related to the user's age, the three elif clauses examine other intervals.

    The script follows one of two paths depending on the age you specify at the command line. In this example, if you enter 25 as your age, the phrase "You are an adult!" appears on your screen.

Related Topics

Managing Multiple Python Versions With pyenv

Introduction If you had ever wished to assist to an application that makes use of several different Python versions but weren't sure whether you would quickly test them all? Do you...

4 minutes read.

Python sorted() function

Python sorted() function The sorted() function returns a sorted list of the specified iterable object. Syntax sorted(iterable, *, key=None, reverse=False) Parameter iterable: It is a required parameter that represents the sequence to sort, list, dictionary, tuple etc. key:...

1 minute read.

Composition in Python

Composition in Python Composition is one of the important concepts of Object-oriented programming (OOPs). Composition basically enables us for creating complex types objects by combining other types of objects in the...

6 minutes read.

Operator Overloading in Python

In any programming language, + is an arithmetic operator; it adds two numbers to give the sum. Have you ever tried to concatenate two strings? Concatenating two strings is adding...

5 minutes read.

Python Redis Example

Introduction: Redis, representing Distant Word reference Server, is a kind of key-esteem NoSQL server. Redis is intended to help circle capacity for determination, holding information after power is stopped, and stores information...

5 minutes read.

What is Python online compiler?

The compiler is a program that is used to scan an entire high-level program (source code) and it translates the scanned program into machine code. Compilers convert .py source code into...

5 minutes read.

Return Statement In Python

Python Return Statement The return statement is generally used for the execution ending and returns the value back to the caller. The return statement can return all types of values and...

2 minutes read.

Add a key-value pair to dictionary in Python

In programming, data type defines the type of value that a variable can hold. With help of these, we can perform various mathematical, logical, or relational operations on that particular...

5 minutes read.

Colors in Python

Adding colour to your visualisations will help them come to life. Even if you know the colours you want to use, picking good ones and putting them into practise might...

4 minutes read.

Kite Python

Kite in Python: The Kite is a package provided by the python programming language; it works with the help of artificial intelligence and helps us write code inside the visual studio....

3 minutes read.

Python Program to Find the gcd of Two Numbers

Introduction Greatest Common Divisor is the full form of gcd. The greatest common divisor, or GCD, of two numbers, is a value that can exactly divide the two digits and is...

5 minutes read.

Create a Table Using Tkinter in Python

Tkinter: The standard Python technique for building Graphical User Interfaces (GUIs) is Tkinter, which is included in all popular Python distributions. The only framework included in the Python standard library is...

3 minutes read.

Captcha Code in Python with Example

Python Programming Language Python programming language is one of the most used programming languages, as it is used widely in the field of software and data analysis, web development, etc. It...

6 minutes read.

Python Set update() method

Python Set update() method The set.update() method in Python updates the current set, by adding items from another set. If an element is common in both the sets, only one appearance of this item...

1 minute read.

Spyder (32-bit) - Free download

Spyder is a free and open-source scientific environment created by and for Python engineers, scientists, and data analysts. It is a robust scientific environment created in Python by and for...

3 minutes read.

Python CGI Programming

The Concept of CGI CGI is an abbreviation for Common Gateway Interface. It is not a type of language but a set of rules (specification) that establishes a dynamic interaction between...

9 minutes read.

How to print in same line in python

How to Print in the Same Line in Python To print in Python, we use the print () function and the syntax of print () goes like this: print (values, sep =...

3 minutes read.

How To Take Multiple Inputs In Python

In C language, we make use of the scanf() function to obtain the values from the user and store it in the variable. Coming to the Python language, we use the...

5 minutes read.

Python Word Tokenizer

Python Overview Python is an Object-Oriented high-level language. Python is designed to be highly beginner-friendly. Python has an English-like syntax, which is very easy to read. Python is an interpreted language...

4 minutes read.

Spell Corrector GUI using Tkinter in Python

GUI: A graphical interface (GUI) is a user interface that lets users interact with electronic devices like computers and smartphones by using menus, icons, and other visual cues (graphics). In contrast...

3 minutes read.