Python教学
-
和我一起做3A游戏《归乡之路》(一)

大家好,我是赛博红兔。我们的《和我一起做3A游戏》系列要开始了!这个系列本质上是对pygame这个Python的游戏库的所有主要功能的介绍。通过这个教程,你应该能掌握制作任何2D游戏的工具,学完这一系列,咱们就可以做出这样一个练打字的游戏。我猜你肯定会说,等一下你这个标题党,不是说一起做一个3A游戏吗?对啊,是。。是这是3A游戏啊。Amusing,Adorable,Affordable,这不是3A嘛?其实,游戏制作本身并不是咱们这个系列的重点。我选择这个pygame的项目,可以很好的锻炼我们如何利用学到的python基础语法知识去开始一个小项目,体验从立项到方案到设计最后成品的过程;还可以练习如何去使用第三方库和模块来制作你的项目。在你继续看下去之前,你需要已经有一些Python的基础,虽然不需要很多,但至少你应该知道基本语法,数据结构,如何使用函数和方法,还有安装和导入库和模块。如果你能跟着我的《和我一起玩Python》初中阶教程学下来那就更好了。在做这个游戏的时候我们会使用面向对象编程的框架去编写。我知道可以不用,但是一般的写法观赏性和维护性很差,再去养成好的实践习惯就很难了,一开始可能会比较抽象,但是跟着我慢慢编写下去,你就会觉得整个程序的条例特别清晰。如果你对面向对象编程不是特别了解也没有关系,可以跟着我编写下来会有个很好的概念的,你还可以去看看《和我一起玩Python》的28,29集“面向对象编程”,了解更系统的知识。 Continue reading
-
Python5分钟: 4. 常用操作符号杂谈

今天我们讨论了Python中常用的操作符号,它们在编程中扮演关键角色。首先,我们介绍了乘法运算符,不仅可以计算乘积,还可重复字符串或列表。然后,学习了合并字典的方法,特别是使用**运算符。它可合并多个字典,若存在相同的键,后一个字典中的值会覆盖前一个字典中的值。讨论了函数定义中的参数解包用法以及**在函数定义中接收任意数量的关键字参数的用法。接着,研究了取模运算符%,常用于判断奇偶数和列表旋转等操作,也介绍了它在字符串格式化中的应用。了解了下划线_的多种用途,包括解包时忽略特定值和作为循环变量的占位符。介绍了矩阵乘法运算符@,在处理线性代数问题时非常有用,并提到了装饰器在函数修饰方面的强大功能。最后,谈到了省略号…在多维数组切片中的应用,特别是在处理高维数据时,可以使代码更加简洁明了。 Continue reading
-
Python5分钟: 1. 三大神器之F-String新版本重大增强

大家好,欢迎收看“Python五分钟”,我是赛博红兔。今天我们将讨论f-string,这是Python 3.6版本引入的一种字符串格式化机制,而最新的3.12版本则增加了更多功能。在此之前的节目中,我们已经介绍了f-string的基本用法,包括插入变量和调用函数结果。我们还展示了如何在占位符中进行算术运算,以及如何格式化日期和时间,同时提供了时间和日期格式化指令的详细说明。此外,我们还学习了如何在f-string中访问字典或列表的元素,以及如何创建多行字符串。 Continue reading
-
和我一起玩Python:38. 十招成为玩蛇高手

今天,我们介绍了十个掌握Python并使代码更“Pythonic”的关键原则。术语“Pythonic”指的是一种符合习惯用法并充分利用Python优势的Python编程风格。 Continue reading
-
和我一起玩Python:37. Python异步编写(下) 多进程并行

我们重新探讨了工厂类比来解释进程、线程以及Python的全局解释器锁(GIL)。进程被比作工厂中的车间,独立运行,不受其他车间影响。线程则代表车间内的工人,共享资源。Python的GIL意味着,尽管有多个线程,但任何时刻只有一个线程执行Python代码,类似于将车间限制为单个活跃工人的规则。 Continue reading
-
Python5分钟: 3. 三大神器之列表理解及新版本重要增强

今天我们要深入探讨Python中最强大的功能之一:列表推导式。这个Python特性是通过简洁的代码行有效构建列表的方式,允许从现有列表中创建新列表,并配以过滤条件。此外,Python 3.12在列表推导式方面有了显著的性能改进。 Continue reading
-
Python5分钟: 2. 三大神器之解包

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

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

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

我们强调在Python中进行单元测试的重要性,解释了它在更新项目功能时节省时间并防止意外副作用的作用。我们使用一个简单的脚本myfunctions.py和test_myfunctions.py中的测试案例来演示单元测试,使用了Python的unittest模块。我们还讨论了断言方法、测试环境的设置和拆卸方法,以及测试的非顺序执行。引入了测试覆盖率的概念,强调高覆盖率并不总是意味着高质量的测试。我们提到了coverage模块,用于跟踪测试执行的代码行。 Continue reading
关于我
大家好,我是赛博红兔,是一个具有超过6年在Yaskawa Motoman机器人实验室和工业过程控制研究所的机器人及控制研究经验的创新且敬业的专业人士。主要关注机器学习、先进动态系统控制算法及其实现,精通C++、Python和MATLAB编程。
咨询互动邮箱:cyberhongtu@outlook.com
Bilibili视频请搜索:赛博红兔CyberHongTu
日志分类
- 生活琐事 (1)
- 生产力和技术 (1)
- 科技新闻评论 (1)
- Python教程《Python5分钟》 (14)
- Python教程《和我一起玩3A游戏》 (7)
- Python教程《和我一起玩Python》 (52)
- 播客《和大伙聊聊天》 (11)
- 书籍读后感 (3)






