以《Python编程:从入门到实践》为教材,以吕老师+几位同学学习串讲为主线,系统的进行python的入门,并手把手带着大家做课后习题。
教材简介:
《python编程从入门到实践》这本书重要概念讲解基本到位,对新手很友好。课后练习基本上就是把书中内容再换个方式复习一遍。
《Python编程 从入门到实践》学习大纲:
第2章 变量和简单数据类型
·变量
变量名只能包含字母、数字和下划线;
变量名不能包含空格,可以使用下划线分隔单词;
不要将关键字和函数名用作变量名;
慎用小写字母l和大写字母O。
·字符串
改写字符大小写:title、upper、lower
删除空白:rstrip、lstrip、strip
第3章 列表简介
·列表
列表是由一系列按特定顺序排列的元素组成。
访问列表元素:元素的位置或索引
索引从0开始
最后一个元素索引为-1
·修改、添加、删除元素
修改:根据索引
添加:append——末尾添加元素——列表名.append(元素名)
insert——插入元素——列表名.insert(索引,元素名)
删除:del——del 列表名[索引]、del 列表名[元素名]
pop——删除末尾元素并获取该元素
——列表名.pop()、列表名.pop(索引)
remove——列表名.remove(元素名)
·组织列表
排序:sort——永久性修改——列表名.sort()、列表名.sort(reverse=True)
sorted——不影响原来顺序——sorted(列表名)、反序reverse
倒序:reverse——反转排列顺序、永久性——列表名.reverse()
长度:len——len(列表名)
第4章 操作列表
·遍历
循环——for
·创建数值列表
生成:range——list(range(...))
统计:min(列表名)、max、sum
列表解析:将for循环和创建新元素的代码合并,并自动附加新元素
例如:squares=[value**2 for value in range(1,11)]
squares=[1,4,9,16,25,36,49,64,81,100]
·使用列表
切片:列表名[开始元素:结束元素]
列表名[:结束元素]——自动从列表开头开始
列表名[开始元素:]——终止于列表末尾
复制:新列表=列表名[:]
新列表=旧列表——这两个变量都指向同一个列表
·元组
列表可以修改,元组不可修改。
定义:圆括号 使用索引访问 不可修改元素
遍历:for循环
修改:不能修改元组的元素,可以给存储元组的变量赋值
·代码格式
缩进:四个空格、制表符——不可混用
行长:79字符、72字符
空行:可读性
第5章 if语句
·条件测试
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。
检查相等:使用两个等号(==)检查 不相等(!=)
比较:== != < > <= >=
检查多个条件:and——条件1 and 条件2
or——条件1 or tiaojian2
特定值包含:in——特定值 in 列表 不包含(not in)
·if语句
if-else语句
if-elif-else语句 可多个elif,可省略else
第6章 字典
·字典
字典是一系列键-值对,每个键都与一个值相关联。 {键:值}
访问:指定字典名和键——字典名[键],得到值
添加:指定字典名、键、值——字典名[键]=值 创建空字典{}
修改:指定字典名、键、新值
删除:del——指定字典名、键——del 字典名[键]——永远消失
·遍历字典
遍历键-值:for循环——声明键和值——for k,v in 字典.items()
遍历键:for循环——for k in 字典.keys()、for k in 字典
遍历值:for循环——for v in 字典.values()
集合:集合类似于列表,但每个元素必须独一无二
找出列表独一无二的元素——set(列表名)
第7章 用户输入和while循环
·输入
输入:input——接受一个参数,即向用户显示的提示或说明
——获取输入为字符串
·while循环
循环:while
退出:break——控制程序流程——退出while循环、for循环
返回:continue——返回到循环的开头
第8章 函数
·定义函数
定义:def——def 函数名():、def 函数名(参数)
形参——函数完成其工作所需的一项信息
实参——调用函数时传递给函数的信息
·传递实参
位置实参:函数调用实参的顺序与函数定义形参的顺序一致
关键字实参:不考虑实参顺序——调用时:函数(实参=值)
默认值:定义时:函数(形参=值)
实参可选:定义时:函数(形参,形参=’’)
·任意数量的实参
元组:def 函数(*name)——名为name的元组
键值对:def 函数(**name)——名为name的字典
·函数模块
可以将函数存储在被称为模块的独立文件中,再将模块导入主程序。
导入:import——import 模块
——from 模块 import 函数
——import 模块 as 别名 (函数也可别名)
——from 模块 import * ——导入模块内所有函数
第9章 类
·创建和使用类
创建:class——calss 类名(): 类名首字母大写
类中的函数称为方法
def __init__(self,形参): self.形参=形参
在类中的方法,有形参self,必不可少还必须位于其他形参前面。Python调用__init__()方法创建类的实例时,将自动传入实参self。每个与类相关联的方法调用都自动传递实参self,它是一个指向实例本身的引用,让实例能够访问类中的属性和方法。
实例:实例名=类() 可传入参数
访问属性:实例名.属性
调用方法:实例名.方法()
·继承
一个类继承另一个类时,将自动获得另一个类的所有属性和方法。
super()函数将父类与子类关联——super().__init__()
·导入类
导入:from 模块 import 类、import 模块
第10章 文件和异常
·读取数据
打开文件:open——with open(filename) as f: f.read()
——with不需要访问文件后将其关闭
——逐行读取 f.readlines()
读取后解读为字符串
·写入文件
写入:先打开再写入——with open(filename,’w’) as f: f.write(...)
模式:r——读 w——写 a——附加(不覆盖写入) r+——读和写
·异常
处理异常:try-except——如果try代码块中的代码运行无误,将跳过except代码块;否则查找except代码块并运行。
try-except-else——try代码块只包含可能导致错误的代码,else代码块包含依赖于try代码块成功执行的代码。
·存储数据
JSON:json.dump()——
import json with open(file,’w’) as f: json.dump(数据,f)
json.load()——
import json with open(file) as f: json.load(f)
第11章 测试代码
·测试:unittest模块——
import unittest class NamesTestCase(unittest.TestCase):
... self.assertEqual(...)
·测试类
断言方法:用来核实得到的结果是否与期望的结果一致
assertEqual(a,b)——核实a==b
assertNotEqual(a,b)——核实a!=b
assertTrue(x)——核实x为True
assertFalse(x)——核实x为False
assertIn(item,list)——核实item在list中
assertNotIn(item,list)——核实item不在list中
方法setUp():unittest.TestCase类包含方法setUp()
在TsetCase类中包含方法setUp(),先运行它,再运行各个以test_打头的方法。