Python中的表达式
表达式是运算符和操作数的组合,被解释为产生其他值。在任何编程语言中,表达式都根据其运算符的优先级进行评估。因此,如果表达式中有多个运算符,则它们的优先级决定了首先执行哪个操作。我们在Python中有许多不同类型的表达式。让我们讨论所有类型以及一些示例代码:
1. 常量表达式:这些是只有常量值的表达式。
例子:
Python3
# Constant Expressions
x = 15 + 1.3
print(x)
Python3
# Arithmetic Expressions
x = 40
y = 12
add = x + y
sub = x - y
pro = x * y
div = x / y
print(add)
print(sub)
print(pro)
print(div)
Python3
# Integral Expressions
a = 13
b = 12.0
c = a + int(b)
print(c)
Python3
# Floating Expressions
a = 13
b = 5
c = a / b
print(c)
Python3
# Relational Expressions
a = 21
b = 13
c = 40
d = 37
p = (a + b) >= (c - d)
print(p)
Python3
P = (10 == 9)
Q = (7 > 5)
# Logical Expressions
R = P and Q
S = P or Q
T = not P
print(R)
print(S)
print(T)
Python3
# Bitwise Expressions
a = 12
x = a >> 2
y = a << 1
print(x, y)
Python3
# Combinational Expressions
a = 16
b = 12
c = a + (b >> 1)
print(c)
Python3
# Multi-operator expression
a = 10 + 3 * 4
print(a)
b = (10 + 3) * 4
print(b)
c = 10 + (3 * 4)
print(c)
16.3
2. 算术表达式:算术表达式是数值、运算符,有时还有括号的组合。这种表达式的结果也是一个数值。这些表达式中使用的运算符符是算术运算运算符,如加法、减法等。以下是Python中的一些算术运算符:
Operators | Syntax | Functioning |
+ | x + y | Addition |
– | x – y | Subtraction |
* | x * y | Multiplication |
/ | x / y | Division |
// | x // y | Quotient |
% | x % y | Remainder |
** | x ** y | Exponentiation |
例子:
让我们看一下Python中算术表达式的示例代码:
Python3
# Arithmetic Expressions
x = 40
y = 12
add = x + y
sub = x - y
pro = x * y
div = x / y
print(add)
print(sub)
print(pro)
print(div)
52
28
480
3.3333333333333335
3. 积分表达式:这些是在所有计算和类型转换之后仅产生整数结果的表达式。
例子:
Python3
# Integral Expressions
a = 13
b = 12.0
c = a + int(b)
print(c)
25
4. 浮点表达式:这些是在所有计算和类型转换之后产生浮点数作为结果的表达式。
例子:
Python3
# Floating Expressions
a = 13
b = 5
c = a / b
print(c)
2.6
5.关系表达式:在这些类型的表达式中,算术表达式写在关系运算符(>,<,>=,<=)的两侧。这些算术表达式首先被评估,然后根据关系运算符进行比较,最后产生一个布尔输出。这些表达式也称为布尔表达式。
例子:
Python3
# Relational Expressions
a = 21
b = 13
c = 40
d = 37
p = (a + b) >= (c - d)
print(p)
True
6. 逻辑表达式:这些是导致True或False 的表达式。它基本上指定了一个或多个条件。例如,(10 == 9) 是 10 等于 9 的条件。我们知道它是不正确的,所以它会返回 False。在学习逻辑表达式的过程中,我们还会遇到一些在逻辑表达式中最常见的逻辑运算符。以下是Python中的一些逻辑运算符:Operator Syntax Functioning and P and Q It returns true if both P and Q are true otherwise returns false or P or Q It returns true if at least one of P and Q is true not not P It returns true if condition P is false
例子:
让我们看一个示例代码:
Python3
P = (10 == 9)
Q = (7 > 5)
# Logical Expressions
R = P and Q
S = P or Q
T = not P
print(R)
print(S)
print(T)
False
True
True
7. 位表达式:这些是在位级别执行计算的表达式。
例子:
Python3
# Bitwise Expressions
a = 12
x = a >> 2
y = a << 1
print(x, y)
3 24
8.组合表达式:我们也可以在一个表达式中使用不同类型的表达式,这将被称为组合表达式。
例子:
Python3
# Combinational Expressions
a = 16
b = 12
c = a + (b >> 1)
print(c)
22
但是当我们组合不同类型的表达式或在一个表达式中使用多个运算符时,运算符优先级就会发挥作用。
表达式中的多个运算符(运算符优先级)
如果表达式中只有一个运算符,那么获取表达式的结果是一个非常简单的过程。但是如果一个表达式中有多个运算符,则可能会根据运算符执行的顺序给出不同的结果。为了解决这些混淆,定义了运算符优先级。运算符优先级只是定义了首先执行哪个运算符的运算符的优先级。在这里,我们看到Python中的运算运算符优先级,其中列表中较高的运算符具有更高的优先级或优先级:Precedence Name Operator 1 Parenthesis ( ) [ ] { } 2 Exponentiation ** 3 Unary plus or minus, complement -a , +a , ~a 4 Multiply, Divide, Modulo / * // % 5 Addition & Subtraction + – 6 Shift Operators >> << 7 Bitwise AND & 8 Bitwise XOR ^ 9 Bitwise OR | 10 Comparison Operators >= <= > < 11 Equality Operators == != 12 Assignment Operators = += -= /= *= 13 Identity and membership operators is, is not, in, not in 14 Logical Operators and, or, not
因此,如果我们在一个表达式中有多个运算符,它会根据运算符优先级进行评估。例如,如果我们有表达式“10 + 3 * 4”。如果没有优先级,它可能会给出两个不同的输出 22 或 52。但是现在看看运算符优先级,它必须产生 22。让我们在Python程序的帮助下讨论这个问题:
Python3
# Multi-operator expression
a = 10 + 3 * 4
print(a)
b = (10 + 3) * 4
print(b)
c = 10 + (3 * 4)
print(c)
22
52
22
因此,运算符优先级在Python表达式的评估中起着重要作用。