Python_从零开始学习
文章平均质量分 86
这是我的学习笔记, 温故而知新.
懂懂kkw
持续精进
展开
-
Python_从零开始学习_(53) 飞机大战_碰撞检测
目录 1. 了解碰撞检测方法2. 碰撞实现1. 了解碰撞检测方法pygame 提供了 两个非常方便 的方法可以实现碰撞检测:pygame.sprite.groupcollide()两个精灵组 中 所有的精灵 的碰撞检测pygame.sprite.groupcollide(group1, group2, dokill1, dokill2, collided = N...原创 2018-11-12 17:50:29 · 1754 阅读 · 0 评论 -
Python_从零开始学习_(51) 飞机大战_敌机
目录 1. 使用定时器添加敌机1.1 定时器1.2 定义并监听创建敌机的定时器事件2. 设计 Enemy 类2.1 敌机类的准备2.2 创建敌机2.3 随机敌机位置和速度2.4 移出屏幕销毁敌机1. 使用定时器添加敌机运行 备课代码, 观察 敌机的 出现规律:游戏启动后, 每隔 1 秒 会出现 一架敌机 每架敌机, 向屏幕下方...原创 2018-11-09 11:06:59 · 1284 阅读 · 0 评论 -
Python_从零开始学习_(50) 飞机大战_背景图像
目录 1. 背景交替滚动的思路确定1.1 实现思路分析1.2 设计背景类2. 显示游戏背景2.1 背景精灵的基本实现2.2 在 plane_main.py 中显示背景精灵2.3 利用初始化方法, 简化背景精灵创建1. 背景交替滚动的思路确定运行 备课代码, 观察 背景图像的显示效果:游戏启动后, 背景图像 会 连续不断地 向下方 移动...原创 2018-11-07 10:36:43 · 1678 阅读 · 0 评论 -
Python_从零开始学习_(48) 飞机大战__pygame 快速入门
目录 1. 使用 pygame 创建图形窗口1.1 游戏的初始化和退出1.2 理解游戏中的坐标系1.3 创建游戏主窗口2. 理解 图像 并实现图像绘制代码演练 1 ---- 绘制背景图像代码演练 2 ---- 绘制英雄图像理解 update() 方法的作用3. 理解 游戏循环 和 游戏时钟3.1 游戏中的动画实现原理3.2 游戏循环...原创 2018-11-02 18:00:21 · 1286 阅读 · 0 评论 -
Python_从零开始学习_(46) eval 函数
eval() 函数十分强大 ---- 将字符串 当成 有效的表达式 来求职 并 返回计算结果# 基本的数学计算print(eval("1 + 1")) # 2# 字符串重复print(eval("'*' * 5")) # *****# 将字符串转换成列表print(eval("[1, 2, 3, 4]")) # [1, 2, 3, 4]# 等等...案例 -- 计...原创 2018-11-02 14:34:52 · 722 阅读 · 0 评论 -
Python_从零开始学习_(44) 模块 和 包
目录 1. 模块1.1 模块的概念1.2 模块的两种导入方式1.3 模块的搜索顺序(扩展)1.4 原则 ---- 每一个文件都应该是可以被导入的2. 包 (package)3. 发布模块 (知道)3.1 制作发布压缩包步骤3.2 安装模块3.3 pip 安装第三方模块1. 模块1.1 模块的概念模块是 Python...原创 2018-10-30 19:44:56 · 938 阅读 · 0 评论 -
Python_从零开始学习_(42) 单例
目录 1. 单例设计模式2. __new__方法3. Python 中的单例 1. 单例设计模式设计模式设计模式 是 前人工作的总结和提炼, 通常, 被人们广泛流传的设计模式都是针对 某一特定问题 的成熟解决方案 使用 设计模式 是为了可重用代码, 让代码更容易被他人理解, 保证代码可靠性单例设计模式目的 ---- 让 类 创建的对象, ...原创 2018-10-29 18:33:39 · 808 阅读 · 0 评论 -
Python_从零开始学习_(38) 私有属性和私有方法
1. 应用场景及定义方式应用场景在实际开发中, 对象 的 某些属性或方法 可能只希望 在对象的内部被使用, 而 不希望在外部被访问到 私有属性 就是 对象 不希望公开的 属性 私有方法 就是 对象 不希望公开的 方法定义方式在 定义属性或方法时, 在 属性名或者方法名前 增加 两个下划线, 定义的就是 私有 属性或方法Women name __age...原创 2018-10-26 16:28:28 · 782 阅读 · 0 评论 -
Python_从零开始学习_(36) 面向对象封装案例
目录 1. 封装2. 小明爱跑步3. 小明爱跑步 ---- 小美也爱跑步4. 摆放家具4.1 添加家具1. 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 ---- 将 属性 和 方法 封装 到一个抽象的 类 中 外界 使用 类 创建 对象, 然后 让对象调用方法 对象方法的细节 都被 封装 在 类的内部...原创 2018-10-25 17:46:37 · 1063 阅读 · 0 评论 -
Python_从零开始学习_(34) 面向对象
目录1. 面向对象基本概念1.1 过程和函数1.2 面向过程 和 面向对象 基本概念1) 面向过程 ---- 怎么做?2) 面向对象 ---- 谁来做?2. 类和对象2.1 类2.2 对象2.3 类和对象的关系2.4 类的设计大驼峰命名法2.4.1 类名的确定2.4.2 属性和方法的确定3. 面向对象基础语法3.1...原创 2018-10-23 17:09:13 · 1174 阅读 · 0 评论 -
Python_从零开始学习_(32) 函数参数和返回值
目录 1. 函数参数和返回值的作用 2. 函数的返回值 进阶3. 函数的参数 进阶1. 函数参数和返回值的作用函数根据 有没有参数 以及 有没有返回值 , 可以 相互相合, 一共有 4 种 组合形式无参数, 无返回值 无参数, 有返回值 有参数, 无返回值 有参数, 有返回值 2. 函数的返回值 进阶在程序开发中, 有时候, 会希望 ...原创 2018-10-22 18:05:26 · 1023 阅读 · 0 评论 -
Python_从零开始学习_(30) 名片管理系统源码
cards_main.py (主流程)import cards_toolswhile True: # 显示功能菜单 cards_tools.show_menu() action_str = input("请选择希望执行的操作: ") print("您选择的操作是 %s" % action_str) # 根据用户输入决定后续的操作 ...原创 2018-10-19 15:56:55 · 1209 阅读 · 2 评论 -
Python_从零开始学习_(28) 公共方法
目录 1. Python 内置函数2. 切片3. 运算符 4. 完整的 for 循环语法1. Python 内置函数Python 包含了一下内置函数:函数 描述 备注 len(item) 计算容器中元素个数 del(item) 删除变量 del 有两种方式(删变量,删元素) max(item) 返回...原创 2018-10-17 16:12:39 · 819 阅读 · 0 评论 -
Python_从零开始学习_(27) 字符串
目录 1. 字符串的定义2. 字符串的常用操作3. 字符串的切片1. 字符串的定义字符串 就是 一串字符, 是编程语言中表示文本的数据类型 在 Python 中可以使用 一堆双引号 "" 或者 一对单引号 ' ' 定义一个字符串虽然可以使用 \"" 或者 \'' 做字符串的转义, 但是在实际开发中: 如果字符串内部需要使用 "", 可以使用 ' ' 定...原创 2018-10-16 14:23:43 · 1054 阅读 · 0 评论 -
Python_从零开始学习_(25) 元组
目录 1. 元组的定义2. 元组常用操作3. 元组循环遍历4. 应用场景1. 元组的定义Tuple (元组) 与列表类似, 不同之处在于元组的 元素不能修改元组 表示多个元素组成的序列 元组 在 Python 开发中, 有特定的应用场景用于存储 一串 信息, 数据 之间使用 , 分隔 元组用 ( ) 定义 元组的 索引 从 0 开始 索引...原创 2018-10-15 18:07:44 · 938 阅读 · 0 评论 -
Python_从零开始学习_(23) 高级变量
1. 高级变量类型列表 元组 字典 字符串 公共方法 变量高级知识点Python 中数据类型可以分为 数字型 和 非数字型 数字型整型 ( int ) 浮点型 ( float ) 布尔型 ( bool ) 真 True 非 0 数 ---- 非零即真 假 false 0 复数型 ( complex ) 主要用于科学计算, 例如: 平面场问题,...原创 2018-10-11 16:28:08 · 758 阅读 · 0 评论 -
Python_从零开始学习_(21) 函数的返回值和嵌套调用
目录 1. 函数的返回值2. 函数的嵌套调用3. 函数嵌套的演练 ---- 打印分割线1. 函数的返回值在程序开发中, 有时候, 会希望 一个函数执行结束后, 告诉调用者一个结果, 以便调用者针对具体的结果做后续的处理 返回值 是函数 完成工作 后, 最后 给调用者的 一个结果 在函数中适用 return 关键字可以返回结果 调用函数一方, 可以 ...原创 2018-10-09 16:50:54 · 1367 阅读 · 0 评论 -
Python_从零开始学习_(19) 函数基本使用
目录 1. 函数的快速体验2. 函数的定义3. 函数的调用4. 第一个函数演练5. PyCharm 的调试工具6. 函数的文档注释1. 函数的快速体验所谓函数, 就是把 具有独立功能的代码块 组织为一个小模块, 在需要的时候 调用 函数的使用包含两个步骤:定义函数 ---- 封装 独立的功能 调用函数 ---- 享受 封装 的成...原创 2018-10-01 15:41:48 · 1583 阅读 · 1 评论 -
Python_从零开始学习_(17) break 和 continue
1. break 和 continuebreak 和 continue 是专门在循环中适用的关键字break 某一条件满足时, 退出循环, 不再执行后续重复的代码 使用如下 :# 1.定义一个整数的变量记录循环的次数i = 0# 2.开始循环while i < 10: # 满足条件, 循环结束 print("hello python") ...原创 2018-09-30 17:50:58 · 742 阅读 · 0 评论 -
Python_从零开始学习_(54) 飞机大战_源码以及飞机大战素材
plane_sprites.py 所有类import randomimport pygame# 定义屏幕大小常量SCREEN_RECT = pygame.Rect(0, 0, 480, 700)# 刷新的帧率FRAME_PER_SEC = 60# 创建敌机的定时器常量CREATE_ENEMY_EVENT = pygame.USEREVENT# 英雄发射子弹事件定时器常量HE...原创 2018-11-12 17:59:28 · 8970 阅读 · 16 评论 -
Python_从零开始学习_(52) 飞机大战_发射子弹
1. 设计 英雄 和 子弹 类英雄需求游戏启动后, 英雄 出现在屏幕的 水平中间 位置, 距离 屏幕底部 120 像素 英雄 每隔 0.5 秒发射一次子弹, 每次 连发三枚子弹 英雄 默认不会移动, 需要通过 左/右 方向键, 控制 英雄 在水平方向移动子弹需求子弹 从 英雄 的正上方 沿直线 向 上方 飞行 飞出屏幕后, 需要从 从精灵组 中删除 Hero -...原创 2018-11-12 17:01:32 · 3579 阅读 · 1 评论 -
Python_从零开始学习_(49) 飞机大战_面向对象设计类
目录 1. 明确主程序职责2. 实现飞机大战主游戏类 2.1 明确文件职责1. 明确主程序职责一个游戏主程序的 职责 可以分为两个部分: 游戏初始化 游戏循环 根据明确的职责, 设计 PlaneGame 类如下: 提示 根据 职责 封装私有方法, 可以避免某一个方法的代码写得太过冗长如果某一个方法编写的太长, 既不好阅读, 也不好维护!...原创 2018-11-05 17:40:36 · 1011 阅读 · 0 评论 -
Python_从零开始学习_(47) pygame 安装
实战步骤pygame 快速体验 飞机大战 实战确认模块 --pygamepygame 就是一个 Python 模块, 专为电子游戏设计 提示 : 学习第三方模块, 通常最好的参考资料就在官方网站安装 pygameLinux 版本 (需要提前下载 python3 和 pip), 终端命令$ sudo pip3 install pygamewindows 版本 (需要提...原创 2018-11-02 15:34:03 · 1116 阅读 · 0 评论 -
Python_从零开始学习_(45) 文件
目录 1. 文件的概念1.1 文件的概念和作用1.2 文件的储存方式2. 文件的基本操作2.1 操作文件的套路2.2 操作文件的函数 / 方法2.3 read 方法 ---- 读取文件2.4 打开文件的方式2.5 按行读取文件内容2.6 文件读写案例 ---- 复制文件3. 文件 / 目录的常用管理操作4. 文件文本的编码...原创 2018-10-31 15:42:58 · 895 阅读 · 0 评论 -
Python_从零开始学习_(43) 异常
目录 1. 异常的概念2. 捕获异常2.1 简单的捕获异常语法2.2 错误类型捕获2.3 异常捕获完整语法3. 异常的传递4. 抛出 raise 异常4.1 抛出异常1. 异常的概念程序在运行时, 如果 Python 解释器 遇到 一个错误, 会停止程序的执行, 并且提示一些错误信息, 这就是 异常 程序停止执行并且提示错误信...原创 2018-10-30 16:31:38 · 833 阅读 · 0 评论 -
Python_从零开始学习_(41) 类属性和类方法
目录1. 类的结构1.1 术语 ---- 实例1.2 类是一个特殊的对象2. 类属性和实例属性2.1 概念和使用2.2 属性的获取机制 (科普)3. 类方法和静态方法3.1 类方法3.2 静态方法3.3 方法综合案例1. 类的结构1.1 术语 ---- 实例使用面向对象开发, 第1步 是设计 类 使用 类名() 创建...原创 2018-10-29 14:07:40 · 870 阅读 · 0 评论 -
Python_从零开始学习_(39) 继承
目录1. 单继承1.1 继承的概念, 语法和特点1.2 方法的重写1.3 父类的 私有属性 和 私有方法2. 多继承2.1 多继承的使用注意事项2.2 新式类与旧式 (经典) 类目标单继承 多继承面向对象三大特性封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中 继承 实现代码的重用, 相同的代码不需要重复的编写 多态 ...原创 2018-10-26 16:45:37 · 896 阅读 · 0 评论 -
Python_从零开始学习_(37) 面向对象封装案例 2
目录1. 士兵突击1.1 开发枪类1.2 开发士兵类2. 身份运算符is 与 == 区别封装封装 是面向对象编程的一大特点 面向对象编程的 第一步 ---- 将 属性 和 方法 封装 到一个抽象的 类 中 外界 使用 类 创建 对象, 然后 让对象使用方法 对象方法的细节 都被 封装 在 类的内部1. 士兵突击需求士兵 许三多 有一把 AK4...原创 2018-10-26 15:59:24 · 938 阅读 · 0 评论 -
Python_从零开始学习_(35) 类的基本使用
目录1. 定义简单的类 (只包含方法)1.1 定义只包含方法的类1.2 创建对象1.3 第一个面向对象程序2. 方法中的 self 参数 2.1 给对象增加属性2.2 使用 self 在方法内部输出每一只猫的名字3. 初始化方法3.1 之前代码存在的问题 ---- 在类的外部给对象增加属性3.2 初始化方法3.3 在初始化方法内部定义...原创 2018-10-24 15:42:05 · 1143 阅读 · 0 评论 -
Python_从零开始学习_(33) 函数的递归
1. 函数的递归函数调用自身的 编程技巧 称为递归1.1 递归函数的特点特点一个函数 内部 调用自己 函数内部可以调用其他函数, 当然在函数内部也可以调用自己代码特点函数内部的 代码 是相同的, 只是针对 参数 不同, 处理的结果不同 当 参数满足一个条件 时, 函数不再执行这个非常重要, 通常被称为递归的出口, 否则 会出现死循环def sum...原创 2018-10-23 16:03:25 · 652 阅读 · 1 评论 -
Python_从零开始学习_(31) 变量进阶
1. 变量的引用变量 和 数据 都是保存在 内存 中的 在 Python 中 函数的参数传递 以及 返回值 都是靠 引用 传递1.1 引用的概念在 Python 中变量 和 数据 是分开存储的 数据 保存在内存中的一个位置 变量 中保存着数据在内存中的地址 变量 中 记录数据的地址, 就叫做 引用 使用 id() 函数可以查看变量中保存数据所在的 内存地址注意...原创 2018-10-19 18:02:50 · 855 阅读 · 0 评论 -
Python_从零开始学习_(29) 名片管理系统
1. 系统需求1.程序启动, 显示名片管理系统欢迎界面, 并显示功能菜单 2.用户用数字选择不同的功能 3.根据功能选择, 执行不能的功能 4.用户名片需要记录用户的 姓名 , 电话 , QQ ,邮件 5.如果查询到指定的名片, 用户可以选择 修改 或者 删除 名片步骤框架搭建 新增名片 显示所有名片 查询名片 查询成功后修改, 删除名片 让 Python 程序能...原创 2018-10-18 17:54:34 · 1223 阅读 · 1 评论 -
Python_从零开始学习_(26) 字典
目录 1. 字典的定义 2. 字典的常用操作 3. 循环遍历 4. 应用场景1. 字典的定义dictionary (字典) 是 除列表以外 Python 之中 最灵活 的数据类型 字典同样可以用来 存储多个数据 和列表的区别 (ps : 在 js 里面就是对象的意思,有其他语言基础的很容易理解)列表 是 有序 的对象集合 字典 是 无...原创 2018-10-16 10:04:02 · 1123 阅读 · 0 评论 -
Python_从零开始学习_(24) 列表
目录 1. 列表的定义2. 列表常用操作3. 关键字, 函数和方法4. 列表的循环遍历 1. 列表的定义List (列表) 是 Python 中使用 最频繁 的数据类型, 在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [ ] 定义, 数据 之间使用 逗号(,) 分隔 列表的 索引 从 0 开始 索引 就是数据在 列表 ...原创 2018-10-11 16:55:47 · 1239 阅读 · 0 评论 -
Python_从零开始学习_(22) 模块
模块是 Python 程序架构的一个核心架构的一个核心概念模块 就好比是 工具包, 想要使用这个工具包中的工具, 就需要 导入 import 这个模块 每一个以扩展名 py 结尾的 Python 源代码文件都是一个 模块 在模块定义的 全局变量 , 函数 都是模块能够提供给外界直接使用的工具1. 第一个模块步骤新建 wk_01_分隔线模块.py , 可添加随意添加变...原创 2018-10-11 16:12:08 · 857 阅读 · 0 评论 -
Python_从零开始学习_(20) 函数参数
目录 1. 函数参数的使用2. 参数的作用3. 形参和实参1. 函数参数的使用在函数名的后面的小括号内部填写 参数 多个参数之间使用 逗号 分隔 def sun_sum(num1, num2): """"两个数求和""" # num1 = 10 # num2 = 20 result = num1 + num2 print...原创 2018-10-09 10:18:45 · 930 阅读 · 0 评论 -
Python_从零开始学习_(18) 循环嵌套_九九乘法表
目录 1. 循环嵌套2. 循环嵌套演练 ---- 九九乘法表1. 循环嵌套while 嵌套就是: while 里面还有 whilewhile 条件1: 条件满足时, 做得事情1 条件满足时, 做得事情2 条件满足时, 做得事情3 ...... while 条件2: 条件满足时, 做得事情1 ...原创 2018-10-01 14:30:07 · 1797 阅读 · 1 评论 -
Python_从零开始学习_(16) 循环计算
1. 循环计算在程序开发中, 通常会遇到 利用循环 重复计算 的需求演练 1 : 需求 : 计算 0 - 100 之间所有数字的累计求和结果# 计算 0 - 100 之间所有数字的累计求和结果# 定义最终结果的变量num = 0# 1.定义一个整数的变量记录循环的次数i = 0# 2.开始循环while i < 100: # 累加 ...原创 2018-09-30 17:24:27 · 1646 阅读 · 4 评论 -
Python_从零开始学习_(15) 循环基础
目录 1. 程序的三大流程2. while 循环基本使用3. 赋值运算符4. Python 中的计数方法1. 程序的三大流程在程序开发中, 一共有三种流程方式 : 顺序 ---- 从上向下, 顺序执行代码 分支 ---- 根据条件判断, 决定执行代码的 分支 循环 ---- 让 特定代码 重复 执行 2. while 循环基本使用循...原创 2018-09-30 17:09:18 · 1566 阅读 · 0 评论 -
Python_从零开始学习_(14) 综合应用 ---- 石头剪刀布
需求从控制台输入要出的券 ---- 石头 (1) / 剪刀 (2) / 布 (3) 电脑 随机 出拳 比较胜负序号 规则 1 石头 胜 剪刀 2 剪刀 胜 布 3 布 胜 石头 代码实现 :# 导入随机工具包import random# 从控制台输入要出的拳 ---石头 (1) / 剪刀 (2) / 布 (3)...原创 2018-09-30 15:05:32 · 1529 阅读 · 0 评论