python编程:从入门到实践 阅读笔记
文章目录
- 第一章 起步
- 第二章 变量和简单数据类型
- String
- 数字
- 整数
- 浮点数
- 第三章 列表简介
- 第四章 操作列表
- 元组
- 第五章 if 语句
- 第六章 字典
- 第七章 用户输入和while循环
- 第八章 函数
- 第九章 类
- 第十章 文件和异常
- 第十二章 武装飞船
- 第十三章 外星人
- 第十四章 记分
- 第十五章 生成数据
- 第十六章 下载数据
- 第十七章 使用API
- 第十八章 Django入门
第一章 起步
- 只要代码清单中包含三个尖括号(>>>),就意味着输出来自终端会话
- 大多数Linux计算机中,都默认安装了Python
- 大多数OS X系统都默认安装了Python
- Windows系统并非都默认安装了Python
第二章 变量和简单数据类型
- 变量名只能包含字母、数字和下划线。不能以数字打头、不能包含空格、不要使用Python关键字和函数名
String
- 在Python中,用引号(包括单双引号)括起的都是字符串
- title()将每个单词的首字母都改为大写
- 制表符\t,换行符\n
- 去除空格strip()、lstrip()、rstrip()
- 在Python 2代码中,有些print语句包含括号,有些不包含。
数字
整数
用这个方法转化成字符串 str(age)
浮点数
第三章 列表简介
- 可以存储不同种类的元素
- 初始化列表 bicycles = [‘trek’, ‘cannondale’, ‘redline’, ‘specialized’]
- 在列表末尾添加元素 列表名.append(‘XXX’);
- 在列表中插入元素 列表名.insert(位置, ‘XXX’);
- 删除元素 del 列表名[位置](没有返回值);列表名.pop(位置),不加位置参数时可删除列表末尾的元素(有返回值)
- 根据值删除元素 列表名.remove(‘列表值’),只删除第一个出现的
- sort()对列表进行永久性排序(逆序 sort(reverse=True));sorted()对列表进行临时排序
- 要反转列表元素的排列顺序,可使用方法reverse(),永久性的
- 使用函数len()可快速获悉列表的长度
第四章 操作列表
- 遍历列表 for magician in magicians:
- list(range(1,5) )生成1-4的列表;list(range(2,10,2)),从2开始数,然后不断地加2,直到达到或超过终值(10)输出[2, 4, 6, 8]
- 数字列表 min() max() sum()
- squares = [value**2 for value in range(1,11)] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
- 复制列表要用切片friend_foods = my_foods[:] 而不是 friend_foods = my_foods(相当于赋地址)
元组
- 不可变的列表被称为元组
- dimensions = (200, 50)
- 虽然不能修改元组的元素,但可以给存储元组的变量赋值
第五章 if 语句
- 检查特定值是否包含在列表中 in; 检查特定值是否不包含在列表中 not in
- if requested_toppings:(requested_toppings是一个列表,有元素true,无元素false)
第六章 字典
- 初始化字典 alien_0 = {‘color’: ‘green’, ‘points’: 5}
- 添加键—值对 alien_0[‘x_position’] = 0
- 修改字典中的值 alien_0[‘color’] = ‘yellow’
- 删除键—值对 del alien_0[‘points’]
- 遍历 for k, v in user_0.items();for k in user_0.keys();for v in user_0.values()
- 遍历字典时,键—值对的返回顺序也与存储顺序不同
- 按顺序遍历字典中的所有键 for name in sorted(favorite_languages.keys()):
- 为剔除重复项,可使用集合(set)。集合类似于列表,但每个元素都必须是独一无二的:for language in set(favorite_languages.values()):
- 有时候,需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套
第七章 用户输入和while循环
- input() 括号里面是一个String,提示用户输入的信息是啥。(如果你使用的是Python 2.7,请使用raw_input()而不是input()来获取输入。)
- 获得输入信息为字符串,需要转化为需要的数据类型,如int()
- for循环是一种遍历列表的有效方式,但在for循环中不应修改列表,否则将导致Python难以跟踪其中的元素。要在遍历列表的同时对其进行修改,可使用while循环。通过将while循环同列表和字典结合起来使用,可收集、存储并组织大量输入,供以后查看和显示。
第八章 函数
- 形参——函数完成其工作所需的一项信息。实参是调用函数时传递给函数的信息。
- 关键字实参:describe_pet(animal_type=‘hamster’, pet_name=‘harry’)、describe_pet(pet_name=‘harry’, animal_type=‘hamster’)是等价的
- 默认值:def describe_pet(pet_name, animal_type=‘dog’):。使用默认值时,在形参列表中必须先列出没有默认值的形参,再列出有默认值的实参。这让Python依然能够正确地解读位置实参。
- function_name(list_name[:])。禁止函数修改列表,向函数传递列表的副本而不是原件。
- def make_pizza(toppings):。形参名toppings中的星号让Python创建一个名为toppings的空元组,并将收到的所有值都封装到这个元组中。
- 只需编写一条import语句并在其中指定模块名,就可在程序中使用该模块中的所有函数。 module_name.function_name()
- 导入特定的函数from module_name import function_0, function_1, function_2
- 指定别名的通用语法如下: from module_name import function_name as fn;import module_name as mn
- 给形参指定默认值时,等号两边不要有空格:def function_name(parameter_0, parameter_1=‘default value’);对于函数调用中的关键字实参,也应遵循这种约定:function_name(value_0, parameter_1=‘value’)
第九章 类
- 根据类来创建对象被称为实例化;首字母大写的名称指的是类;类中的函数称为方法
- 方法__init__()是一个特殊的方法,每当你根据Dog类创建新实例时,Python都会自动运行它
- OrderedDict实例的行为几乎与字典相同,区别只在于记录了键—值对的添加顺序。from collections import OrderedDict
- 类名应采用驼峰命名法,即将类名中的每个单词的首字母都大写,而不使用下划线。实例名和模块名都采用小写格式,并在单词之间加上下划线。
第十章 文件和异常
- 读取整个文件
with open('pi_digits.txt') as file_object:contents = file_object.read()print(contents)
相比于原始文件,该输出唯一不同的地方是末尾多了一个空行。为何会多出这个空行呢?因
为read()到达文件末尾时返回一个空字符串,而将这个空字符串显示出来时就是一个空行。要删
除多出来的空行,可在print语句中使用rstrip():
print(contents.rstrip())
删除空格用.strip()
2. 逐行读取 for line in file_object(会有空行);print(line.rstrip())
3. 创建一个包含文件各行内容的列表 lines = file_object.readlines()
4. ,为删除这些空格,可使用strip()
5. 。打开文件时,可指定读取模式(‘r’)、写入模式(‘w’)、附加模式(‘a’)或让你能够读取和写入文件的模式(‘r+’)。如果你省略了模式实参,Python将以默认的只读模式打开文件。
6. 对json文件进行处理:函数json.dump()接受两个实参:要存储的数据以及可用于存储数据的文件对象;json.load()将这个列表读取到内存中
7. 代码能够正确地运行,但可做进一步的改进——将代码划分为一系列完成具体工作的函数。这样的过程被称为重构
8. Python标准库中的模块unittest提供了代码测试工具。单元测试用于核实函数的某个方面没有问题;测试用例是一组单元测试,这些单元测试一起核实函数在各种情形下的行为都符合要求。良好的测试用例考虑到了函数可能收到的各种输入,包含针对所有这些情形的测试。全覆盖式测试用例包含一整套单元测试,涵盖了各种可能的函数使用方式。
9. import unittest
class ClassName(unittest.TestCase):
unittest.main()
所有以test_打头的方法都将自动运行
10. unittest.TestCase类包含方法setUp(),让我们只需创建这些对象一次,并在每个测试方法中使用它们。
第十二章 武装飞船
第十三章 外星人
第十四章 记分
第十五章 生成数据
第十六章 下载数据
第十七章 使用API
第十八章 Django入门
python编程:从入门到实践 阅读笔记相关推荐
- python基础学习[python编程从入门到实践读书笔记(连载一)]
写在前面:本文来自笔者关于<python编程从入门到实践>的读书笔记与动手实践记录. 程序员之禅 文章目录 02变量和简单数据类型 03 列表简介 04 操作列表 05 if语句 06 字 ...
- python基础学习[python编程从入门到实践读书笔记(连载五)]:数据可视化项目第16章
文章目录 下载数据 制作全球地震散点图:JSON格式 end 几个实验结果: 每日最高气温: 地震图绘制: 下载数据 CSV文件格式 在文本文件中存储数据,一个简单方式是将数据作为一系列以逗号分隔的值 ...
- python基础学习[python编程从入门到实践读书笔记(连载三)]:django学习笔记web项目
文章目录 Django项目:学习笔记web网页 项目部署 参考 自己部署的网站,还是小有成就感的,毕竟踩过很多坑,实战技能也有些许进步. 网站链接:http://lishizheng.herokuap ...
- python编程从入门到实践读书笔记-《Python编程:从入门到实践》项目部分读书笔记(二)...
鸽了一个暑假没有更新,现在趁着还没开学更一下.咕咕咕 上期作业: 请创建一个Django项目,命名为Blog,建不建立虚拟环境随便你,最后本地跑成了就行. 步骤: ①在需要创建工程的文件夹下打开cmd ...
- python基础学习[python编程从入门到实践读书笔记(连载二)]:外星人入侵项目
第一版游戏demo 添加计分系统:中间是最高得分,右边是本次得分. 显示余下的飞船数 主函数如下,完整程序将上传到笔者的github:https://github.com/shizhengLi/lea ...
- python基础学习[python编程从入门到实践读书笔记(连载六)]:数据可视化项目第17章
文章目录 使用API end 项目结果: 使用plotly可视化github最受欢迎的python仓库: 修改后的可视化图表: 使用API 编写独立的程序,实现对获取的数据可视化.我们使用Web AP ...
- python基础学习[python编程从入门到实践读书笔记(连载四)]:数据可视化项目第15章
文章目录 matplotlib初学 基础绘图用法 随机漫步 使用Plotly模拟掷骰子 matplotlib初学 基础绘图用法 import matplotlib.pyplot as pltsquar ...
- 《python编程从入门到实践》python入门级-学习笔记(1-2章)——持续更新中
CSDN的小伙伴们你们好~从今天起我开始自学编程了. 恭喜你关注到一个成长型账号. 一以来作为美术出身的TA,我无数次的向往能打出几行属于自己的代码.为了跟上时代的步伐,也为了能更加深入TA这个职业, ...
- 《Python编程 从入门到实践》简单读书笔记
目录 第2章 变量和简单数据类型 第3章 列表简介 第4章 操作列表 第5章 if语句 第6章 字典 第7章 用户输入和while循环 第8章 函数 第9章 类 第10章 文件和异常 第11章 测试代 ...
最新文章
- 单个APP接入多个微信支付宝支付的一种解决方案
- Leetcode 344. 反转字符串 解题思路及C++实现
- Json.NET Deserialize时如何忽略$id等特殊属性
- 对话阿里云:解锁视频云的新技术、新场景
- rhel系统启动过程_Linux系统启动过程分析
- python删除链表中的最小元素_LintCode Python 入门级题目 删除链表元素、整数列表排序...
- 多线程同步 通过实现Runnable的示例
- quartz配置参数说明
- 数值的整数次方(代码的完整性)
- 笔记本显示未连接录音服务器,电脑显示未安装音频设备怎么办?
- 【观察】嵌入式AI崛起,这里有一本通关“秘籍”
- Scc Puzzle
- Django前后端分离概念解析
- SMM框架简单用户增删改查
- LOL手游诺手终极玩法,对线王者剑姬如何操作?国服第一推荐操作
- 英特尔服务器级cpu型号含义,新手必看 英特尔移动CPU命名规则解析
- codeforces 1677A. Tokitsukaze and Strange Inequality
- 阻碍你成功的五个不良习惯
- HDFS删除并清空回收站
- 入侵网站的黑客被我抓到了!
热门文章
- kb、kB、kbps、kBps的区别
- [解决方案]罗技POWERPLAY鼠标垫无法连接G703/G903/G403等鼠标
- 单道批-多道批-分时-实时
- Oozie-4.1.0-cdh5.5.2 安装部署使用
- java压缩文件夹并加密
- android 排他button,javascript排他思想
- 头条号如何做原创,老家底都翻出来了,又要被人骂了
- 【Deep Learning 5】FNN前馈神经网络
- python实现大数定理
- java 变量 英文_Java中的字符类型变量无论是中文,英文还是数字,都是占4字节。...