python编程:从入门到实践 阅读笔记

文章目录

  • 第一章 起步
  • 第二章 变量和简单数据类型
    • String
    • 数字
      • 整数
      • 浮点数
  • 第三章 列表简介
  • 第四章 操作列表
    • 元组
  • 第五章 if 语句
  • 第六章 字典
  • 第七章 用户输入和while循环
  • 第八章 函数
  • 第九章 类
  • 第十章 文件和异常
  • 第十二章 武装飞船
  • 第十三章 外星人
  • 第十四章 记分
  • 第十五章 生成数据
  • 第十六章 下载数据
  • 第十七章 使用API
  • 第十八章 Django入门

第一章 起步

  1. 只要代码清单中包含三个尖括号(>>>),就意味着输出来自终端会话
  2. 大多数Linux计算机中,都默认安装了Python
  3. 大多数OS X系统都默认安装了Python
  4. Windows系统并非都默认安装了Python

第二章 变量和简单数据类型

  1. 变量名只能包含字母、数字和下划线。不能以数字打头、不能包含空格、不要使用Python关键字和函数名

String

  1. 在Python中,用引号(包括单双引号)括起的都是字符串
  2. title()将每个单词的首字母都改为大写
  3. 制表符\t,换行符\n
  4. 去除空格strip()、lstrip()、rstrip()
  5. 在Python 2代码中,有些print语句包含括号,有些不包含。

数字

整数

用这个方法转化成字符串 str(age)

浮点数

第三章 列表简介

  1. 可以存储不同种类的元素
  2. 初始化列表 bicycles = [‘trek’, ‘cannondale’, ‘redline’, ‘specialized’]
  3. 在列表末尾添加元素 列表名.append(‘XXX’);
  4. 在列表中插入元素 列表名.insert(位置, ‘XXX’);
  5. 删除元素 del 列表名[位置](没有返回值);列表名.pop(位置),不加位置参数时可删除列表末尾的元素(有返回值)
  6. 根据值删除元素 列表名.remove(‘列表值’),只删除第一个出现的
  7. sort()对列表进行永久性排序(逆序 sort(reverse=True));sorted()对列表进行临时排序
  8. 要反转列表元素的排列顺序,可使用方法reverse(),永久性的
  9. 使用函数len()可快速获悉列表的长度

第四章 操作列表

  1. 遍历列表 for magician in magicians:
  2. list(range(1,5) )生成1-4的列表;list(range(2,10,2)),从2开始数,然后不断地加2,直到达到或超过终值(10)输出[2, 4, 6, 8]
  3. 数字列表 min() max() sum()
  4. squares = [value**2 for value in range(1,11)] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
  5. 复制列表要用切片friend_foods = my_foods[:] 而不是 friend_foods = my_foods(相当于赋地址)

元组

  1. 不可变的列表被称为元组
  2. dimensions = (200, 50)
  3. 虽然不能修改元组的元素,但可以给存储元组的变量赋值

第五章 if 语句

  1. 检查特定值是否包含在列表中 in; 检查特定值是否不包含在列表中 not in
  2. if requested_toppings:(requested_toppings是一个列表,有元素true,无元素false)

第六章 字典

  1. 初始化字典 alien_0 = {‘color’: ‘green’, ‘points’: 5}
  2. 添加键—值对 alien_0[‘x_position’] = 0
  3. 修改字典中的值 alien_0[‘color’] = ‘yellow’
  4. 删除键—值对 del alien_0[‘points’]
  5. 遍历 for k, v in user_0.items();for k in user_0.keys();for v in user_0.values()
  6. 遍历字典时,键—值对的返回顺序也与存储顺序不同
  7. 按顺序遍历字典中的所有键 for name in sorted(favorite_languages.keys()):
  8. 为剔除重复项,可使用集合(set)。集合类似于列表,但每个元素都必须是独一无二的:for language in set(favorite_languages.values()):
  9. 有时候,需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套

第七章 用户输入和while循环

  1. input() 括号里面是一个String,提示用户输入的信息是啥。(如果你使用的是Python 2.7,请使用raw_input()而不是input()来获取输入。)
  2. 获得输入信息为字符串,需要转化为需要的数据类型,如int()
  3. for循环是一种遍历列表的有效方式,但在for循环中不应修改列表,否则将导致Python难以跟踪其中的元素。要在遍历列表的同时对其进行修改,可使用while循环。通过将while循环同列表和字典结合起来使用,可收集、存储并组织大量输入,供以后查看和显示。

第八章 函数

  1. 形参——函数完成其工作所需的一项信息。实参是调用函数时传递给函数的信息。
  2. 关键字实参:describe_pet(animal_type=‘hamster’, pet_name=‘harry’)、describe_pet(pet_name=‘harry’, animal_type=‘hamster’)是等价的
  3. 默认值:def describe_pet(pet_name, animal_type=‘dog’):。使用默认值时,在形参列表中必须先列出没有默认值的形参,再列出有默认值的实参。这让Python依然能够正确地解读位置实参。
  4. function_name(list_name[:])。禁止函数修改列表,向函数传递列表的副本而不是原件。
  5. def make_pizza(toppings):。形参名toppings中的星号让Python创建一个名为toppings的空元组,并将收到的所有值都封装到这个元组中。
  6. 只需编写一条import语句并在其中指定模块名,就可在程序中使用该模块中的所有函数。 module_name.function_name()
  7. 导入特定的函数from module_name import function_0, function_1, function_2
  8. 指定别名的通用语法如下: from module_name import function_name as fn;import module_name as mn
  9. 给形参指定默认值时,等号两边不要有空格:def function_name(parameter_0, parameter_1=‘default value’);对于函数调用中的关键字实参,也应遵循这种约定:function_name(value_0, parameter_1=‘value’)

第九章 类

  1. 根据类来创建对象被称为实例化;首字母大写的名称指的是类;类中的函数称为方法
  2. 方法__init__()是一个特殊的方法,每当你根据Dog类创建新实例时,Python都会自动运行它
  3. OrderedDict实例的行为几乎与字典相同,区别只在于记录了键—值对的添加顺序。from collections import OrderedDict
  4. 类名应采用驼峰命名法,即将类名中的每个单词的首字母都大写,而不使用下划线。实例名和模块名都采用小写格式,并在单词之间加上下划线。

第十章 文件和异常

  1. 读取整个文件
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_打头的方法都将自动运行
python编程:从入门到实践 阅读笔记_第1张图片
10. unittest.TestCase类包含方法setUp(),让我们只需创建这些对象一次,并在每个测试方法中使用它们。

第十二章 武装飞船

第十三章 外星人

第十四章 记分

第十五章 生成数据

第十六章 下载数据

第十七章 使用API

第十八章 Django入门

你可能感兴趣的:(python,python)