<< Chapter < Page Chapter >> Page >

With the exception of (//) and (%), the behavior of all of the operators in Figure 1 should be self-explanatory. The behavior of those two operators was explained in the earlier module titled Itse1359-1020-Numbers .

Relational operators

These are the operators that are typically used in the conditional clause of decision logic. Basically the operators test to determine if the operatordescribes the relationship between the left and right operands. If so, the expression returns true. Otherwise, it returns false.

Figure 2 shows all, or at least most of the relational operators.

Figure 2 . Relational operators.
<a<b (true if a is less than b)<= a<= b (true if a is less than or equal to b) == a == b (true if a is equal to b)!= a != b (true if a is not equal to b)>= a>= b (true if a is greater than or equal to b)>a>b (true if a is greater than b)

Logical operators

The logical operators are shown in Figure 3 .

Figure 3 . Logical operators.
and And a and b (true if both a and b are true) or Inclusive Or a or b (true if either a or b are true)not Negation not a (switch a from true to false or from false to true)&Bitwise And a&b ^ Bitwise Exclusive Or a ^ b| Bitwise Inclusive Or a | b ~ Bitwise Inversion ~ a

The operators in Figure 3 are often used to embellish the relational operators from Figure 2 in decision logic.

The first operator ( and ) returns true if both operands are true.

The second operator ( or ) returns true if either operand is true.

The third operator ( not ) has only one operand and it is on the right side of the operator. It switches the operand from true to false or from false to true.

The script in Listing 1 shows examples of the use of these three operators in conjunction with the equality relational operator.

Listing 1 . Logical operators "and", "or", and "not".
a=5 print(a==5 and a==5)print(a==5 and a==4) print(a==5 and not a==5)print(a==5 and not a==4) print(a==5 or a==5)print(a==5 or a==4) print(a==4 or a==4)#This script produces the following output:True FalseFalse TrueTrue TrueFalse

The last four operators in Figure 3 are used to perform logical operations at the bit level. An explanation of these operators is beyond the scope ofthis module.

Bit shift operators

The operators in Figure 4 are used to shift bits to the right or left. As with the bitwise logical operators, a discussion of the behavior of these operatorsis beyond the scope of this module.

Figure 4 . Bit shift operators.
Left Shift a<<b Right Shift a>>b

Miscellaneous operators

Figure 5 shows a variety of miscellaneous operators. You are already familiar with the behavior of the concatenation operator. Thebehavior of the remaining operators will be explained when and if they are used in future modules.

Figure 5 . Miscellaneous operators.
Concatenation seq1 + seq2 Containment Test obj in seqIdentity a is b Identity a is not bIndexed Assignment obj[k] = vIndexed Deletion del obj[k]Indexing obj[k]Slice Assignment seq[i:j] = valuesSlice Deletion del seq[i:j] Slicing seq[i:j]String Formatting s % objTruth Test obj truth(obj)

Discussion and sample code

Other than the code shown in Listing 1 , I won't present code to illustrate the use of these operators in thismodule. Instead, I will use the operators in code in future modules and discuss them, as appropriate when they are used.

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Itse1359-1220-Operators
  • File: Itse1359-1220.htm
  • Published: 10/26/14
  • Revised: 02/25/15
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download a PDF file for thismodule at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, you should beaware that some of the HTML elements in this module may not translate well into PDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version of the module.

In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale on Amazon.com showing me as the author. Ineither receive compensation for those sales nor do I know who does receive compensation. If you purchase such a book, please beaware that it is a copy of a module that is freely available on cnx.org and that it was made and published withoutmy prior knowledge.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

-end-

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Itse 1359 introduction to scripting languages: python. OpenStax CNX. Jan 22, 2016 Download for free at https://legacy.cnx.org/content/col11713/1.32
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?

Ask