Python基础学习篇章四
一. Python数据类型之字典
1. 键的排序:for循环
由于字典不是序列,因此没有可靠的从左至右的顺序。这就导致当建立一个字典,将它打印出来,它的键也许会以与我们输入时的不同的顺序出现。有时候我们确实要强调顺序的时候,可以进行这样的操作:可以通过字典的keys方法收集键的列表,然后使用列表的sort方法,对键进行排序,再使用Python的for循环逐个显示结果。


另外还有一种简单操作,就是在新版本的Python中使用sorted()内置函数可以一步完成:

Python中的一个主要的原则是,首先为了简单和可读性去编写代码,在程序运行之后,并证明了确实有必要考虑性能后,再考虑该问题。
2. 不存在的键:if 测试
虽然可以通过给新的键赋值来扩展字典,但是当获取一个不存在的键值时,会报错。怎么避免这种情况呢?当我们不知道要获取的键值是否存在时,可以通过if先判断一下,具体操作如下:

上面用到了has_key()方法和if... else...的简单用法。
3. 元组
元组对象就像一个不可改变的列表。元素是序列,具有不可变性。元组一旦创建后就不能再改变:

这里当改变元组的第一个元素时报错了,说明元组是不可变的。
4. 文件
文件对象是Python代码对电脑上外部文件的主要接口。但是它没有特定的常量语法创建文件。可以调用内置open()函数创建一个文件对象,open()函数有两个参数,参数一是表示要创建或打开的文件名(可以包含路径),参数二是表示处理模式的字符(比如‘w’表示写数据):

上面就实现了简单的创建data.txt文件,向该文件写入内容,再读取文件中的内容的过程。下面是关于文件对象的所有的操作方法:

5. 其他数据类型
集合,是通过调用内置set()函数而创建的对象的容器,支持一般的数学集合的操作:交集,并集,差集

总结一下:
(1)具有不可变性的核心数据类型有:数字,字符串,元组
(2)属于序列的核心数据类型有:字符串,列表,元组
Python基础学习篇章四的更多相关文章
- Python基础学习(四)
菜鸟咀嚼python基础之继续. 一.返回函数 第三章已经简单操作了Python的高阶函数,目前继续练手函数作为返回值的特效:通常,高阶函数除了可以接收函数作为参数外,还可以把函数作为结果值返回. 案 ...
- python基础学习(四)if判断语句
if判断语句的基本语法 在python中,if判断的格式如下: if 条件: 条件成立时,执行的语句 ...... 注意:代码的缩进要使用一个tab键或者四个空格(建议使用四个空格,tab和空格最好不 ...
- python基础学习篇章一
一. 对Python的认识 1. Python的标准实现方式是将源代码的语句编译为字节码的形式,之后再将字节码解释出来.由于字节码是一种与平台无关的形式,字节码具有可移植性.但是Python没有将代码 ...
- Python基础学习篇章二
一. Python如何运行程序 1. 在交互模式下编写代码 最简单的运行Python程序的方法是在Python交互命令行中输入程序.当然有很多方法可以开始这样的命令行,比如IDE,系统终端.如果你已经 ...
- Python基础学习篇章三
一. Python对象类型 1. 对象是Python最基本的概念,一个Python程序可以分解为模块.语句.表达式.和对象.它们的关系如下:(1)程序由模块构成 (2)模块包含语句 (3)语句包含表达 ...
- Python基础学习总结(四)
6.高阶特性 6.1迭代 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration).在Python中,迭代是通过for ... ...
- python基础学习第四天
#字符串到数字 可以进行各种进制转换#print(int('11111',8)) #需求 对字符串中的单词翻转 保留空格#第一种方法 最笨clstr='I love you!'bam=clstr.sp ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Python基础学习四
Python基础学习四 1.内置函数 help()函数:用于查看内置函数的用途. help(abs) isinstance()函数:用于判断变量类型. isinstance(x,(int,float) ...
随机推荐
- asp.net core 发布centos 7 遇到的坑
只是简单记录 .net core 在linux 的安装部署步骤,大神可以忽略 虚拟机:VMware Workstation Pro Linux 版本:http://mirrors.aliyun.com ...
- 如何提高windows的性能
默认windows启用了很多的效果,我们可能平时没有注意到,比如什么淡入淡出效果之类的,其实在我看来,这些效果不仅难看,而且影响了windows的性能,下面我就来说说怎么通过关闭这些效果来提高wind ...
- 使用uiautomation自动化重命名pdf书签,使全大写字母变成首字母大写
今天下载了一个英文pdf书籍,但书签全是大写英文字母,看上去有点别扭,于是想办法用自动化重命名pdf书签, 使书签全部变成首字母大写. pdf原始书签如下图: 重命名后的pdf书签 自动化动态效果图, ...
- 共享MFC自绘Listctrl代码
在别人代码基础上修改的ListCtrl,支持设置行高,header高度,header背景图,奇偶行不同背景色, 支持设置某列为Checkbox,Edit,Combobox, 支持自定义排序. 效果图如 ...
- 数据库入门之运行原始 SQL 查找
数据库入门之运行原始 SQL 查找 一旦你设置好了数据库连接,就可以使用 DB facade 来进行查找.DB facade 提供每个类型的查找方法:select.update.insert.dele ...
- vuex入门
安装&使用 npm install vuex --save 1 通过Vue.use()来使用: import Vue from 'vue' import Vuex from 'vuex' Vu ...
- [JLOI2014] 松鼠的新家
Description 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房间,并且有n-1根树枝连接,每个房间都可以相互到达,且俩个房间之间的路线都是唯一的.天哪,他居然真的住在"树&q ...
- 笔记:Maven 仓库和插件配置本机私服
通过配置POM中的配置仓库和插件仓库,只在当前项目生效,而实际应用中,我们希望通过一次配置就能让本机所有的Maven项目都使用自己的Maven私服,这个时候我们需要配置 settings.xml文件, ...
- c++编码及读写文件
写文件 #include <fstream> #include <iostream> using namespace std; int main() { ofstream ou ...
- Java8 中 ConcurrentHashMap工作原理的要点分析
简介: 本文主要介绍Java8中的并发容器ConcurrentHashMap的工作原理,和其它文章不同的是,本文重点分析了不同线程的各类并发操作如get,put,remove之间是如何同步的,以及这些 ...