Python运算符构建高效算法的20个案例

在这里插入图片描述

案例1:基础算术运算符

代码示例:

# 加法  
result = 5 + 3  
print("加法结果:", result)  
  
# 减法  
result = 5 - 3  
print("减法结果:", result)  
  
# 乘法  
result = 5 * 3  
print("乘法结果:", result)  
  
# 除法  
result = 5 / 3  
print("除法结果:", result)  
  
# 取模(余数)  
result = 5 % 3  
print("取模结果:", result)  

案例2:比较运算符

代码示例:

a = 5  
b = 3  
  
# 等于  
print(a == b)  
  
# 不等于  
print(a != b)  
  
# 大于  
print(a > b)  
  
# 小于  
print(a < b)  
  
# 大于等于  
print(a >= b)  
  
# 小于等于  
print(a <= b)  

案例3:赋值运算符

代码示例:

x = 5       # 简单赋值  
x += 3      # 相当于 x = x + 3  
print(x)  
  
x -= 2      # 相当于 x = x - 2  
print(x)  
  
x *= 4      # 相当于 x = x * 4  
print(x)  
  
x /= 2      # 相当于 x = x / 2  
print(x)  

案例4:逻辑运算符

代码示例:

x = True  
y = False  
  
# 逻辑与  
print(x and y)  
  
# 逻辑或  
print(x or y)  
  
# 逻辑非  
print(not x)  

案例5:成员运算符

代码示例:

list = [1, 2, 3, 4, 5]  
  
# in 运算符检查元素是否在列表中  
print(3 in list)  
  
# not in 运算符检查元素是否不在列表中  
print(6 not in list)  

案例6:身份运算符

代码示例:

a = [1, 2, 3]  
b = [1, 2, 3]  
  
# is 运算符检查两个变量是否指向同一个对象  
print(a is b)  # 输出 False,因为虽然内容相同,但它们是不同的对象  
  
# is not 运算符检查两个变量是否不指向同一个对象  
print(a is not b)  # 输出 True  

案例7:位运算符

代码示例:

a = 5  # 在二进制中表示为 0101  
b = 3  # 在二进制中表示为 0011  
  
# 按位与  
print(a & b)  
  
# 按位或  
print(a | b)  
  
# 按位异或  
print(a ^ b)  
  
# 按位取反  
print(~a)  
  
# 左移  
print(a << 1)  
  
# 右移  
print(a >> 1)  

案例8:复合赋值运算符

代码示例:

x = 10  
x += 5     # 相当于 x = x + 5  
print(x)  
  
x -= 3     # 相当于 x = x - 3  
print(x)  
  
x *= 2     # 相当于 x = x * 2  
print(x)  
  
x /= 4     # 相当于 x = x / 4  
print(x)  

案例9:条件表达式

代码示例:

age = 20  
status = "成年" if age >= 18 else "未成年"  
print(status)  

案例10:链式比较

代码示例:

x = 10  
if 5 < x < 15:  
    print("x 在 5 和 15 之间")  

案例11:增强for循环

代码示例:

for i in range(1, 6):  
    print(i)  

案例12:列表推导式

代码示例:

squares = [x**2 for x in range(1, 6)]  
print(squares)  

案例13:字典推导式

代码示例:

squares_dict = {x: x**2 for x in range(1, 6)}  
print(squares_dict)  

案例14:函数式编程中的map()和filter()

代码示例:

numbers = [1, 2, 3, 4, 5]  
squared = map(lambda x: x**2, numbers)  
even = filter(lambda x: x % 2 == 0, numbers)  
print(list(squared))  
print(list(even))  

案例15:异常处理

代码示例:

try:  
    result = 10 / 0  
except ZeroDivisionError:  
    print("不能除以零!")  


高级的Python运算符和技巧

案例16:三元运算符的高级用法

代码示例:

def compare(a, b):  
    return f"{a} 大于 {b}" if a > b else f"{a} 小于或等于 {b}"  
  
print(compare(5, 3))  # 输出 "5 大于 3"  
print(compare(3, 5))  # 输出 "3 小于或等于 5"  

在这个例子中,我们使用了三元运算符来简化条件语句,使得代码更加紧凑和易读。

案例17:使用生成器表达式优化内存使用

代码示例:

large_list = (x for x in range(1000000))  
for i in large_list:  
    if i % 100000 == 0:  
        print(i)  

这里,我们使用生成器表达式替代列表推导式,这样可以节省大量内存,尤其是在处理大数据集时。

案例18:利用zip()函数进行并行迭代

代码示例:

names = ['Alice', 'Bob', 'Charlie']  
ages = [25, 30, 35]  
for name, age in zip(names, ages):  
    print(f"{name} 的年龄是 {age}")  

通过zip()函数,我们可以轻松地在多个列表间并行迭代,这对于数据处理和分析非常有用。

案例19:使用@符号定义装饰器

代码示例:

def log_function_call(func):  
    def wrapper(*args, **kwargs):  
        print(f"调用了 {func.__name__}")  
        return func(*args, **kwargs)  
    return wrapper  
  
@log_function_call  
def add(a, b):  
    return a + b  
  
print(add(5, 3))  

装饰器是一种强大的工具,可以用来修改函数的行为,而无需更改其源代码。在这个例子中,我们创建了一个日志记录装饰器,用于记录函数的调用情况。

案例20:利用属性访问运算符进行对象属性的动态获取

代码示例:

class Person:  
    def __init__(self, name, age):  
        self.name = name  
        self.age = age  
  
person = Person('Alice', 25)  
print(person.name)  # 使用点运算符访问属性  
print(getattr(person, 'age'))  # 动态获取属性  

getattr()函数允许我们动态地获取对象的属性,这对于处理动态配置或不确定的属性名非常有用。

结论

Python运算符和相关技术是编程中的基石,掌握它们将使你能够编写出更高效、更优雅的代码。通过本文的案例,我们不仅介绍了基本的运算符用法,还探讨了一些高级技巧,如生成器表达式、装饰器和动态属性访问。希望这些知识能够帮助你在编程旅程中不断前进,解决更复杂的问题。

关于技术储备

由于文章篇幅有限,文档资料内容较多,需要这些文档的朋友,可以加小助手微信免费获取,【保证100%免费】,中国人不骗中国人。

在这里插入图片描述

                                     **(扫码立即免费领取)**

全套Python学习资料分享:

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,还有环境配置的教程,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频全套

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

如有侵权,请联系删除。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值