程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

Python语言中的运算符(python中运算符的用法)

hfteth 2025-07-24 17:45:51 技术文章 3 ℃

在 Python 中,运算符(Operators)是用于执行各种运算的特殊符号或关键字,它们可以对一个或多个操作数(变量、值或表达式)进行数学计算、逻辑判断、赋值等操作。

运算符

描述

[]、[:]

索引、切片

**

~、+、-

按位取反、正号、负号

*、/、%、//

乘、除、模、整除

+、-

加、减

>>、<<

右移、左移

&

按位与

^、`

`

<=、<、>、>=

小于等于、小于、大于、大于等于

==、!=

等于、不等于

is、is not

身份运算符

in、not in

成员运算符

not、or、and

逻辑运算符

=、+=、-=、*=、/=、%=、//=、**=、&=、|=、^=、>>=、<<=

赋值运算符

案例:

# 索引和切片运算符
# 索引示例
print("-------------------索引和切片运算符 -------------------")
text = "Python"
print(text[1])    # 输出 'y' (获取索引1的字符)
print(text[-1])   # 输出 'n' (获取最后一个字符)

# 切片示例
print("-------------------切片运算符 -------------------")
numbers = [0, 1, 2, 3, 4, 5]
print(numbers[1:4])   # 输出 [1, 2, 3] (获取索引1到3的元素)
print(numbers[::2])   # 输出 [0, 2, 4] (步长为2)
print(numbers[::-1])  # 输出 [5, 4, 3, 2, 1, 0] (反转列表)

# 幂运算符
# 幂运算
print("-------------------幂运算符 -------------------")
print(2 ** 3)     # 输出 8 (2的3次方)
print(10 ** -2)   # 输出 0.01 (10的-2次方)

# 一元运算符
# 按位取反
print("-------------------一元运算符 -------------------")
print(~5)        # 输出 -6 (二进制补码运算)
# 正号
print(+3.14)     # 输出 3.14 (保持原值)
# 负号
print(-10)       # 输出 -10 (取负值)


# 乘除类运算符
# 乘法
print("-------------------乘除类运算符 -------------------")
print(3 * 4)     # 输出 12
# 除法
print(10 / 3)    # 输出 3.333... (浮点除法)
# 模运算
print(10 % 3)    # 输出 1 (余数)
# 整除
print(10 // 3)   # 输出 3 (向下取整)

# 加减运算符
# 加法
print("-------------------加减运算符 -------------------")
print(5 + 3.2)   # 输出 8.2
# 字符串连接
print("Hello" + " " + "World")  # 输出 "Hello World"
# 减法
print(10 - 7)    # 输出 3


# 位移运算符
# 右移
print("-------------------位移运算符 -------------------")
print(8 >> 2)    # 输出 2 (8的二进制1000右移2位变成0010)
# 左移
print(3 << 2)    # 输出 12 (3的二进制0011左移2位变成1100)

# 位与运算符
# 位与运算
print("-------------------位与运算符 -------------------")
print(5 & 3)     # 输出 1 (0101 & 0011 = 0001)


# 位异或和位或运算符
# 位异或
print("-------------------位异或和位或运算符 -------------------")
print(5 ^ 3)     # 输出 6 (0101 ^ 0011 = 0110)
# 位或
print(5 | 3)     # 输出 7 (0101 | 0011 = 0111)

# 比较运算符
print("-------------------比较运算符 -------------------")
# 小于等于
print(3 <= 5)    # 输出 True
# 小于
print(3 < 3)     # 输出 False
# 大于
print(5 > 3.5)   # 输出 True
# 大于等于
print(5 >= 5)    # 输出 True

# 相等性运算符
print("-------------------相等性运算符 -------------------")
# 等于
print(3 == 3.0)  # 输出 True (值相等)
# 不等于
print(3 != "3")  # 输出 True (类型不同)

# 身份运算符
print("-------------------身份运算符 -------------------")
a = [1, 2, 3]
b = a
c = [1, 2, 3]

# is 判断是否是同一对象
print(a is b)    # 输出 True (同一对象)
print(a is c)    # 输出 False (不同对象)
# is not
print(a is not c) # 输出 True


# 成员运算符
print("-------------------成员运算符 -------------------")
fruits = ['apple', 'banana', 'orange']

# in 判断是否包含
print('banana' in fruits)    # 输出 True
# not in
print('pear' not in fruits)  # 输出 True


# 逻辑运算符
print("-------------------逻辑运算符 -------------------")
# not 逻辑非
print(not True)   # 输出 False
# or 逻辑或
print(True or False)  # 输出 True
# and 逻辑与
print(True and False) # 输出 False



# 赋值运算符
print("-------------------赋值运算符 -------------------")
# 简单赋值
x = 10
print(x)  # 输出 10

# 复合赋值
x += 5    # 等价于 x = x + 5
print(x)  # 输出 15

x -= 3    # x = x - 3
print(x)  # 输出 12

x *= 2    # x = x * 2
print(x)  # 输出 24

x /= 4    # x = x / 4
print(x)  # 输出 6.0

x %= 4    # x = x % 4
print(x)  # 输出 2.0

x //= 0.5 # x = x // 0.5
print(x)  # 输出 4.0

x **= 2   # x = x ** 2
print(x)  # 输出 16.0

x = 16
x &= 5    # x = x & 5 (16 & 5 = 0)
print(x)  # 输出 0.0

x |= 3    # x = x | 3 (0 | 3 = 3)
print(x)  # 输出 3.0

x ^= 1    # x = x ^ 1 (3 ^ 1 = 2)
print(x)  # 输出 2.0

x >>= 1   # x = x >> 1 (2 >> 1 = 1)
print(x)  # 输出 1.0

x <<= 3   # x = x << 3 (1 << 3 = 8)
print(x)  # 输出 8.0

运算符和表达式应用

例子1:华氏温度转摄氏温度

要求:输入华氏温度将其转换为摄氏温度,华氏温度到摄氏温度的转换公式为: C = (F - 32) / 1.8 。

# `input`函数用于从键盘接收用户输入
# 用`float`函数将`str`类型处理成`float`类型

f = float(input('请输入华氏温度: '))
c = (f - 32) / 1.8
print('%.1f华氏度 = %.1f摄氏度' % (f, c))

例子2:计算圆的周长和面积

要求:输入一个圆的半径($\small{r}$),计算出它的周长( 2πr )和面积( πr2 )。

radius = float(input('请输入圆的半径: '))
perimeter = 2 * 3.1416 * radius
area = 3.1416 * radius * radius
print('周长: %.2f' % perimeter)
print('面积: %.2f' % area)

Python 中有一个名为math 的内置模块,该模块中定义了名为pi的变量,它的值就是圆周率。

import math
radius = float(input('请输入圆的半径: '))
perimeter = 2 * math.pi * radius
area = math.pi * radius ** 2
print(f'周长: {perimeter:.2f}')
print(f'面积: {area:.2f}')

例子3:判断闰年

要求:输入一个 1582 年以后的年份,判断该年份是不是闰年。

注意:Python 的 calendar.isleap(year) 函数遵循格里高利历规则,1582 年之前的闰年因国家/地区而异(有的国家甚至到 20 世纪才改用格里高利历)。

year = int(input('请输入年份: '))
is_leap = year % 4 == 0 and year % 100 != 0 or year % 400 == 0
print(f'{is_leap = }')

Tags:

最近发表
标签列表