赛博红兔的科技博客

CyberHongTu shares news, insights, and musings on fascinating technology subjects.


Python

  • Python5分钟: 2. 三大神器之解包

    Python5分钟: 2. 三大神器之解包

    我们探讨了Python中的解包概念,这是一种在赋值期间将可迭代对象的元素分配给多个变量的技术。我们重温了“与Python玩耍”系列中的基本和多元素解包,强调了与访问列表索引相比,其简洁性和效率。解包允许在不需要临时变量的情况下进行变量交换。解包不仅适用于列表,还适用于所有可迭代对象,包括元组、字符串、集合、字典、迭代器和生成器。这种多功能性极大地简化了代码,使变量赋值更直观。 Continue reading

  • 和我一起玩Python:36. Python异步编写(上) 多线程并发

    和我一起玩Python:36. Python异步编写(上) 多线程并发

    在“和我一起玩Python”系列中介绍了f-strings的功能及应用。除了变量插入和函数结果调用外,f-strings还可进行表达式计算和日期时间格式化。讨论内容还包括访问字典和列表元素、使用三重引号创建多行字符串、Python 3.12版本新增功能、深层嵌套的利与弊。虽然深层嵌套会增加代码复杂性,但Python官方鼓励通过代码风格和linting工具解决这些问题,促进创新。视频最后向观众提出问题,展示了f-字符串在Python编程中的实用性和灵活性。 Continue reading

  • 和我一起玩Python:35. Git和GitHub版本控制

    和我一起玩Python:35. Git和GitHub版本控制

    Git 是一种流行的版本控制系统,可跟踪代码更改。它允许查看项目历史,简化了回退错误的过程,同时消除了中心化系统的问题。Git 是免费、开源、快速且易于扩展的,全球超过 90% 的软件项目都在使用它。GitHub 是基于 Git 的,允许进行项目版本控制和协作。它形成了一个开源社区,用于发现、复制、修改和为项目做出贡献。此外,介绍了下载、安装和配置 Git,创建 GitHub 账户以及在 VS Code 中使用 Git 进行版本控制的实际步骤。 Continue reading

  • 和我一起玩Python:34. Python单元测试

    和我一起玩Python:34. Python单元测试

    我们强调在Python中进行单元测试的重要性,解释了它在更新项目功能时节省时间并防止意外副作用的作用。我们使用一个简单的脚本myfunctions.py和test_myfunctions.py中的测试案例来演示单元测试,使用了Python的unittest模块。我们还讨论了断言方法、测试环境的设置和拆卸方法,以及测试的非顺序执行。引入了测试覆盖率的概念,强调高覆盖率并不总是意味着高质量的测试。我们提到了coverage模块,用于跟踪测试执行的代码行。 Continue reading

  • 和我一起玩Python:33. VS Code调试器(Python Debug)

    和我一起玩Python:33. VS Code调试器(Python Debug)

    使用VS Code中的调试功能对于编程非常重要,尤其是在处理复杂程序时。通过设置断点并使用调试命令,可以更有效地检查变量状态、理解执行顺序和观察调用堆栈。这种方法比简单的打印语句更有组织和高效,能帮助识别和修复错误。通过两个示例,介绍了如何在Python脚本和订单处理系统中使用调试器。总结时强调,调试不仅是解决问题的工具,更是深入理解程序运行方式的重要手段。 Continue reading

  • 和我一起玩Python:32. 迭代器和生成器

    和我一起玩Python:32. 迭代器和生成器

    迭代器和生成器对于处理大型数据集至关重要。迭代器允许以节省内存的方式顺序访问数据,而生成器则能按需生成数据,简化代码,提高性能。迭代器可用于列表、元组、集合、字典和字符串等可迭代对象,而生成器是一种特殊的迭代器,通过yield语句按需生成值。生成器表达式提供了一个内存友好的方式来处理大型数据集。生成器的优点包括简化代码、内存效率和自动保存状态。 Continue reading

  • 和我一起玩Python:31. Python装饰器

    和我一起玩Python:31. Python装饰器

    今天咱们聚焦在Python的装饰器上,先从上节课的闭包开始聊。一开始,我用一个简单的装饰器示例来引入,就是那个outer()函数,它能修改并保持其他函数的功能。我们通过给say_hi函数加个@outer前缀来应用这个装饰器。接下来,我们讨论了怎么处理带参数的装饰器,用到了*args和**kwargs。还探讨了用类来定义装饰器的概念,这样做的好处包括了封装性和可维护性。最后,通过实例展示了装饰器在Python中的实际应用,比如用于日志记录和计算函数执行时间。这些例子展示了装饰器如何增强代码功能,用于性能监控和调试等任务。 Continue reading

  • 和我一起玩Python:30. Python闭包

    和我一起玩Python:30. Python闭包

    在 Python 闭包讲座中,我们解释了闭包是指一个函数内嵌套另一个函数,并包含一个自由变量。该自由变量在外部函数中定义,但在内部函数中使用。我们举例说明了一个名为 outer() 的函数内定义了另一个名为 inner() 的函数,以及一个变量 count。inner() 函数可以使用 nonlocal 关键字来改变 count 的值,这表明 count 是一个外部变量。每次调用 my_counter()(即 inner() 的一个实例)都会使 count 加1,展示了闭包能够记住外部作用域变量状态的能力,即使外部函数执行完毕也不受影响。这种特性使闭包与普通函数不同,也为学习装饰器等高级内容铺平了道路。 Continue reading

  • 和我一起玩Python:29. 面向对象编程 (OOP后篇)

    和我一起玩Python:29. 面向对象编程 (OOP后篇)

    今天课程深入探讨了Python中的面向对象编程(OOP),包括类变量、类方法、静态方法和特殊方法。类变量是在类中所有方法外定义的变量,被所有实例共享,可通过类名访问。类方法和静态方法分别用@classmethod和@staticmethod装饰器标记,用于创建别的构造器和充当工具函数角色。特殊或双下方法用于操作符重载和内置的Python函数。课程还强调了封装、继承和多态等核心概念,并强调在真实项目中实施这些概念的重要性。 Continue reading

  • 和我一起玩Python:28. 面向对象编程 (OOP前篇)

    和我一起玩Python:28. 面向对象编程 (OOP前篇)

    面向对象编程(OOP)不仅适用于Python,也适用于其他主流编程语言。它的重点是用对象来搭建程序,对象就是类的实例,可使软件更易扩展、复用和灵活。类是创建实例的蓝图,而构造器(init)用于初始化变量。继承则通过类的层次结构消除重复代码。课程强调“不要重复自己”原则,以及继承是实现DRY代码的强大技巧。学完课程后,你将能定义类、创建实例,并理解继承的用处。还将提供实践练习,加深理解。 Continue reading

关于我


大家好,我是赛博红兔,是一个具有超过6年在Yaskawa Motoman机器人实验室和工业过程控制研究所的机器人及控制研究经验的创新且敬业的专业人士。主要关注机器学习、先进动态系统控制算法及其实现,精通C++、Python和MATLAB编程。

咨询互动邮箱:cyberhongtu@outlook.com

Bilibili视频请搜索:赛博红兔CyberHongTu

日志分类