《Python 学习手册4th》 第九章 元组、文件及其他

时间:2024-10-20 08:03:31
'''
时间: 9月5日 - 9月30日
要求:
1. 书本内容总结归纳,整理在博客园笔记上传
2. 完成所有课后习题
注:“#” 后加的是备注内容
(每天看42页内容,可以保证月底看完此书)
“重点笔记”“本章习题” - 标题1,二级标题用- 标题2,笔记大纲标题、习题题目- 加粗,16px
'''

重点笔记

元组

一. 元组的特点

  任意对象的有序集合、通过偏移存取、属于不可变序列类型、固定长度+异构+任意嵌套、对象引用的数组

二. 转换、方法以及不可变性

  “+” “*”以及分片操作应用于元组时将返回新元组,并且元组不提供字符串、列表和字典中的方法。

>>> a = ('a','b','f','s','e')
>>> sorted(a)
['a', 'b', 'e', 'f', 's']

文件

三. 文件上下文管理器

  它允许我们把文件处理代码包装到一个逻辑层中,以确保在退出后可以自动关闭文件,而不是依赖于垃圾收集上的自动关闭。

>>> with open(r'C:\Python27\somefile.txt') as myfile:
for line in myfile:
print (line) First line Second line Third line

四. 重访类型分类

  下面是一些要记住的要点:

  • 对象根据分类来共享操作;例如,字符串、列表和元组都共享诸如合并、长度和索引等序列的操作
  • 只有可变对象可以原处修改
  • 文件导出唯一的方法,因此可比性并不真的适用于它们--当处理文件的时候,它们的状态可能会修改
  • “数字”包含:整数、浮点数、负数、小数和分数
  • 字符串包括str
  • 集合类似于一个无值的字典的键,但是他们不能映射为值,并且没有顺序

本章习题:

1. 你怎么确定元组有多大?

答:len()

2. 写个表达式,修改元组中第一个元素。在此过程中,(4,5,6)应该变成(1,5,6) 。

答:

>>> a = (4,5,6)
>>> b =(1,)+ a[1:]
>>> b
(1, 5, 6)

3. open文件调用中,默认的处理模式自变量是什么?

答:"r",读取输入

4. 你可能使用什么模式把Python对象存储在文件中,而不需要亲自将它们转换成字符串?

答:pickle模块

(struct模块把数据打包成为二进制格式,从而保存在文件中)

5. 你怎么复制嵌套结构的所有组成部分?

答:import copy,copy.deepcopy()

(浅层复制,alist[:]、adict.copy()就可以满足大多数的复制)

6. Python在什么时候会认为一个对象为真?

答:非零非空