《Python学习手册 第五版》 -第9章 元组、文件与其他核心类型
本章的主要内容是介绍了元组和文件的使用,同时作为介绍数据类型的最后一个章节,本章也总结和复习了前面所介绍的核心数据类型,总结的部分在此不多介绍,因为前面章节都有,在此就重点介绍以下两点内容
1、元组
1)元组是什么?如何使用?
2)元组VS列表
2、文件
1)文件的打开
2)文件的使用
以上就是本章要讲解的重点内容,接下来就详细讲解
1、元组
1)元组是什么?如何使用?
元组是任意对象的有序集合,一旦创建则不可改变。元组和列表非常相似,只不过元组不能再原位置修改,元组通常写成包在圆括号中的一系列项
元组的创建就是通过圆括号,具体代码示例如下:
以上代码中,想改变T[1]的数据,但是系统显示提示错误,所以验证了我们上面的说明,即元组是不可改变的
元组和列表有很多相似的地方,所以很多操作也是一样的,比如【+】、【*】以及索引和切片,具体代码示例如下:
元组是不可改变的,那万一你想调整数据怎么办?可以通过与列表之间的转换来完成,就是把元组转换为列表,再把列表转换为元组,具体代码示例如下:
由此会引申出一个问题,那就是【为什么有了列表还要元组?】
元组的不可变性提供了一种一致性,这样你可以确保元组在程序中不会被另一个引用修改,而列表就没有这样的保证了,有种类似于其他语言中的“常量”声明
2、文件
1)打开文件
打开和关闭文件比较容易累计,一般打开文件会通过程序调用内置函数open
myfile = open('myfile.txt', 'w');myfile.close()
其中需要重点说明的是open函数,第一个参数位置是输入要打开文件的位置,此处是默认当下环境的位置,如果是指定路径,则代码会变为如下:
myfile = open(r'C:\Users\Friend\LearningPython\myfile.txt', 'w')
这是我自己电脑中的完整目录,其中开头的“r”是关闭转义字符,前面章节有讲过,可以自行查找,第二个参数位置“w”表示打开的权限,这里是write的缩写,是写的权限,表示以输出模式生产并打开文件
具体代码示例如下:
针对以上代码的操作说明一下
首先是打开已有的一个文件,读取其中的内容,然后关闭
其次采用“w”模式打开文件,对文件内容进行写入,然后尝试读取的时候,提示错误,提示文件“not readable”,因为这个时候文件是在写入状态,无法读取,所以需要关闭后再读取
最后,等文件关闭后再打开文件,不用第二个参数,默认是打开读取状态,这个时候读取文件内容,就会显示是我们之前写入的内容了
以上是关于文件的打开,其中也涉及到一些文件的使用操作,例如读取和写入,接下来针对文件的使用详细说明
2)文件的使用
对于文件的使用,我们一般会是将对象存入文件,然后再从文件中读取,上面的内容是一个简单的为文字写入和读取,如果遇到其他类型的数据,如果只是这样操作会比较复杂
本章中有介绍三种方式,数据类型的转换、通过pickle函数,通过Json函数,综合下来看,我个人是比较喜欢Json,这个也会在爬虫应用到,他的好处就是,存入什么样的Python对象,读取的就是什么样的对象,所以在此仅讲解Json的简单应用,如果大家对其他两种感兴趣的话,可以留言,我再视情况补充
以下是Json的方式代码示例:
针对以上的示例代码说明以下几点
1、代码是通过IDLE集成环境运行的,之前的代码示例是命令窗口
2、代码运行前,需要导入Json:import json
3、示例中是用一个字典数据距离,它通过json写入数据,然后读数据出来,读出来的数据就是python对象,可以直接操作,这样很方便后续python对读取内容数据的处理
其实Json是很强大的,在此我们只是最最基本的展示,后续还会有更多的内容
以上就是本章讲解的重点,从代码示例的截图看,IDLE的效果要比命令窗口的显示更好,而且是白底的更容易阅读,所以后续代码示例截图就转为IDLE的格式
《Python学习手册 第五版》 -第9章 元组、文件与其他核心类型的更多相关文章
- 《Python学习手册 第五版》 -第13章 while循环和for循环
上一章已经讲过if条件语句,这章重点是循环语句:while.for 本章的重点内容 1.while循环 1)一般形式 2)break.continue.pass和循环的else 2.for循环 1)一 ...
- 《Python学习手册 第五版》 -第12章 if测试和语法规则
本章节的内容,主要讲解if语句,if语句是三大复合语句之一(其他两个是while和for),能处理编程中大多数逻辑运算 本章的重点内容如下: 1.if语句的基本形式(多路分支) 2.布尔表达式 3.i ...
- 《Python学习手册 第五版》 -第11章 赋值、表达式和打印
上一章对Python的语句和语法已经进行了基本的说明,接下来就是每个章节的详细说明,本章的主要内容就是标题中涵盖的三点:赋值语句.表达式语句.打印语句 本章重点内容如下: 1.赋值语句 1)赋值语句的 ...
- 《Python学习手册 第五版》 -第10章 Python语句简介
前面在开始讲解数据类型的时候,有说过Python的知识结构,在此重温一下 Python知识结构: 程序由模块组成 模块包含语句 语句包含表达式 表达式创建并处理对象 关于知识结构,前面已经说过我自己的 ...
- 自学笔记系列:《Python学习手册 第五版》 -写在开始之前
今年双十一,在当当网上买了这本书,很厚很厚的一本书,大概有将近1700页左右,的确是一个“大工程”, 关于这本书的学习,我想采用一种博客的方式进行,既是写给自己,也想分享给每一个对Python学习感兴 ...
- 《Python学习手册 第五版》 -第14章 迭代和推导
承接上一章for循环的讲解,迭代和推导,是对for循环的一种深入的探索和扩展 本章重点内容 1.迭代 1)什么是迭代?都有哪些分类 2)常规的使用方法 3)多遍迭代器VS单遍迭代器 2.列表推导 1) ...
- 《Python学习手册 第五版》 -第18章 参数
在函数的定义和调用中,参数是使用最多喝最频繁的,本章内容就是围绕函数的参数进行讲解 本章重点内容如下: 1.参数的传递 1)不可变得参数传递 2)可变得参数传递 2.参数的匹配模式 1)位置次序:从左 ...
- 《Python学习手册 第五版》 -第15章 文档
本章主要介绍Python中的文档,会通过多种方式来说明,如果查看Python自带文档和其他参考的资料 本章重点内容 1.#注释:源文件文档 2.dir函数:以列表显示对象中可用的属性 3.文档字符串 ...
- 《Python学习手册 第五版》 -第16章 函数基础
前面的章节讲解的是一些基础数据类型.基本语句使用和一些文档查看的内容,这些都是一些基础,其实还谈不上入门,只有了解了函数,才算入门 函数是编程里面使用最多的也是最基本的程序结构, 本章重点内容 1.函 ...
- 《Python学习手册 第五版》 -第17章 作用域
上一章的是函数的基础,因为函数在运用过程中,是可以嵌套的,函数中是会涉及到变量的,为了明确各自变量的使用范围,系统是有一套规则或者原则的,这就是作用域的概念 本章重点内容 1.作用域:作用域的概念 2 ...
随机推荐
- @Configuration结合@Bean实现对象的配置
@Configuration结合@Bean实现对象的配置 前提:最近项目中需要做支付接口,支付宝以及微信支付,本文并不介绍如何写支付接口,而是通过这个示例讲解配置应该怎么写,项目中使用的是Kotlin ...
- 初学者的API测试技巧
API(应用程序编程接口)测试是一种直接在API级别执行验证的软件测试.它是集成测试的一部分,它确认API是否满足测试人员对功能.可靠性.性能和安全性的期望.与UI测试不同,API测试是在没有GUI层 ...
- 论Java中的抽象类与接口
目录 抽象类和抽象方法 定义 与普通类的区别以及注意点: 抽象类的作用 接口 定义 示例 注意 作用 最后:接口与抽象类的异同 使用场景 借鉴 抽象类和抽象方法 定义 抽象方法和抽象类都必须被abst ...
- 解决vue中element组件样式修改无效
vue中element组件样式修改无效 <style> .detail{ .el-input__inner { height: 48px; } } </style> 直接写st ...
- # 曹工说Spring Boot源码(10)-- Spring解析xml文件,到底从中得到了什么(context:annotation-config 解析)
写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...
- es5中数组的遍历方法
//for循环 const arr = [1,2,3,4,5] for(let i = 0; i < arr.length; i++){ if(arr[i] === 2){ //break // ...
- load文件到hive,并保存
DataFrame usersDF = sqlContext.read().load("hdfs://spark1:9000/users.parquet"); usersDF.se ...
- hdu6638 线段树求最大子段和
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6638 Problem Description There are n pirate chests bu ...
- Docker学习(三)认识Docker和常用命令
Docker学习(三)认识Docker和常用命令 Docker体系结构 docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的 REST ...
- python 打印乘法表
for i in range(1, 10): for j in range(1, i+1): print('%s * %s = %s' % (i, j, i*j), end=' ') print('' ...