原创: 许灼灼
继上一本《笨办法学Python3》看完之后
继续开启第二本书《Python编程从零基础到项目实战》的阅读
在昨晚也看完了该书关于Python的基础部分
先谈谈我对技术书籍的阅读方式:
对于编程技术书的阅读,我一向采用快速阅读和阶段回看方式
因为对于技术的描述方式其实都是大同小异
比如:
方式1:定义概念,格式以及解释,举例解答,强化练习,小技巧(对可能碰到的问题的简单释义),附录
方式2:情境引入,抛出问题,解决问题,小结,练习,常见问题,附录
方式3:更多其他形式
编程技术书中的表,一般都是API表
编程技术书中的图,一般都是代码描述或者代码运行结果,很少包含操作步骤,操作步骤图示一般在办公类、设计类或者其他需要用文字无法有效描述的书籍中见到
但快速阅读不会翻翻就算,有些翻阅即可,有着重看细看,细看部分包含:
1、前言和目录
2、作者建议
3、例子相关(问题起源,解决什么问题,如何解决,涉及什么数据结构、方法、算法等)
4、小技巧部分
另外:我会准备一支铅笔,看到需要记忆的地方,采用铅笔划下来,最后回看的时候,着重看一遍划线部分。
记录一下读《笨办法学Python3》书籍所做的摘录内容,以供后续翻看
备注:
1、采用【】包含的是个人补充,书中没有的内容
2、该摘录内容仅是我觉得需要学习或者注意的地方
3、以书籍目录作为摘录索引
前言:编程建议:读和写,注重细节,发现不同,少看多问,禁止复制粘贴,有耐心观看视频教程,坚持练习
书籍配套资源:异步社区http://www.epubit.com
0、准备工作
学习python只需要3样东西:文本编辑器(Atom),命令行终端,python
1、第一个程序
记录各种错误,比如:语法错误(SyntaxError)
2、注释和#号
注释采用#号,【也可以用‘’‘三个单引号】
3、数字和数学计算
算式符号和运算优先级,其实和数学差不多
4、变量与命名
在每一行代码上面写注释,并解释给自己听
记录出错信息,描述给自己看,包括行号,出错原因,描述,以及解决方法
在操作符号两边加上空格会更容易阅读
5、更多的变量和打印
要在字符串中嵌入变量,需要使用{}特殊符号,把变量放里面
字符串还需要以f开头
举例:f“hello{somevar}”
浮点数四舍五入:round
6、字符串和文本
输出格式化方式:.format()
举例:xxx.format()
把代码给别人,让别人搞破坏,然后自己去找出问题,并修复
【发现错误之后的操作流程:找到错误提示,错误定位,提出错误解决方法,尝试解决并记录解决方法】
7、更多打印
记录碰到的所有错误
了解并明确注释的方法,目的和格式
8、打印打印
9、打印打印打印
三引号之间不能有空格
10、 那是什么
了解转义符号,打印难以录入的字符
速记卡是什么?如何设计
11、 提问
Print函数格式,end,sep
X=int(inpu())
12、 提示别人
X=input(“提示语句”)
查看帮助
i. Python –m pydoc input
ii. 【Python、help(input)】
13、 参数、解包和变量
Argv解包
举例
i. 创建Python程序 01.py
from sys import argv
First,second,third=argv
Print(first,second,third)
ii. 运行python程序
Python 01.py x y z
iii. 查看运行结果
Argv与input的区别
i. Argv是执行命令的时候要求用户输入
ii. Input是脚本运行的时候要求用户输入
14、 提示和传递
15、 读取文件
读取文件可以用到argv了
打开文件:txt=open(filename)
读取文件:txt.read
处理完文件之后需要关闭:close
16、 读写文件
读写文件的相关命令:close,read,readline,truncate(清空),write(‘xxx’),Seek(0)移动到文件头
只读:Open(filename,’r’)
17、 更多文件操作
命令Exists:判断是否存在
18、 命名、变量、代码和函数
函数命名和变量命名规则相同
19、 函数和变量
如何分析函数功能:添加注释,打印,并用笔绘制图示,并注释
20、 函数和文件
21、 函数可以返回某些东西
22、 到现在为止你学到了什么
23、 字符串、字节串和字符编码
【编码不大明白,需要多花一点时间看看】
24、 更多的练习
函数内部的变量都是临时的
25、 更多更多的练习
了解模块,函数,从help(函数名)开始
退出Python,采用quit()
26、 恭喜你,现在可以考试了
27、 记住逻辑关系
需要记忆:逻辑术语
需要记忆:真值表
28、 布尔表达式练习
不相同采用 !=,而不是<>
短路逻辑是个好名称,举例:任何以false开头的and语句都会直接处理成false
29、 If语句
【IF结构】
递增运算符
30、 Else和if
【多重if结构】
31、 作出决定
判断一个数是否处于某个值域中?
i. 1<x<10
ii. X in range(1,10)
32、 循环和列表
记得 for I in range(1,3) 只运行2次,而不是3次:叫做含首不含尾
33、 While循环
For循环和while循环有何不同?
i. For循环只能对一些东西的集合进行循环,while循环可以对任何对象进行循环
34、 访问列表的元素
序数和基数的差别,其实不了解也没多大关系
序数从1开始
基数从0开始
35、 分支和函数
Exit(0)表示正常退出,exit(1)表示发生了错误
可以在函数的最后,如果没有返回值的话,写上exit(0)
Input(‘>’),里面的参数是一个将会被打印出来的字符串
36、 设计和调试
值得一看:IF语句的规则
值得一看:循环的规则
作者建议的:写软件最好的方法
37、 复习各种符号
关键字
数据类型
字符串转义序列
老式字符串格式
运算符
作者建议的:如何有效阅读代码
38、 列表的操作
数据结构:组织数据的正式方法
列表:在python中,最常用的一种数据结构
i. 以纸牌举例,可用于教学:
有序的列表:纸牌排列
存储内容:纸牌本身
随机访问:任意抽取
线性:从第一张开始找起
通过索引:你告诉我第几张,然后我依据那个数字去找到它
c) 函数式编程与面向对象编程?
39、 字典、可爱的字典
字典的关键理念是映射或者关联
列表有序,字段无序,但也有有序的字典,如ordereddict
40、 模块、类和对象
关于模块
i. 模块是包含函数和变量的python文件
ii. 可以导入这个文件
iii. 可以使用点操作符(.)访问模块中的函数和变量
模块与字典的差别
i. 字典:【key】
ii. 模块:.Key
类和模块差不多?
对象和import差不多?
【关于类,这本书讲得不好】
###
笔记到这里差不多,后面是面向对象,项目骨架,web网站之类的,有点零散,虽然我也做了一些笔记,但在看过另外一本书之后,发现本书跳跃得是在太快。
但在后面的内容中,有一些作者对读者的建议,倒还算中肯,比如接下来的路,老程序员的建议之类。
比如:
在学完一种编程语言后,不要成为这种编程语言工作方式的奴隶
编程语言这东西并不重要,重要的是你用这些编程语言做的事情
编程作为一项智力活动,是唯一一种能让你创建交互式艺术的艺术形式
当你学习一种新编程语言时,不要说它的工作方式太蠢,也许你还没有深入了解它
###
41、 学习面向对象术语
42、 对象、类及从属关系
43、 基本的面向对象分析和设计
44、 继承和组合
45、 你来制作一款游戏
46、 项目骨架
47、 自动化测试
48、 用户输入进阶
49、 创建句子
50、 你的第一个网站
51、 从浏览器中获取输入
52、 创建web游戏
53、 写下来的路
###
写在文末
看这本书,大概花了三天
整理了一下笔记,也大概花了三天
挺累的
不过也挺值得的
至少
这个暑假读书计划,我已经完成了五分之一
下学期开学授课,我可以在学生面前吹牛说,Python基础入门,其实挺简单的
本文约3000个字,谢谢阅读
###
我的公众号:mygkk123 我的公开课,日常随笔,欢迎关注