python:列表、元组和字典
1.1、特点:
1.2、创建列表
name_list = ['zhang', 'wang', 'li']
或 name_list = list(['zhang', 'wang', 'li'])
1.3、基本操作
索引:name_list[1] 列表中,第一个元素索引值为0.
追加:name_list.append('zhao'),追加可以重复,但是不建议这样做。
删除: name_list.pop()---删除最后一个;
name_list.pop(2)----按照索引位置删除
name_list.remove('zhang')---删除指定元素。
计数:name_list.count('zhao')
插入:name_list.insert(2,'zhangsan')
反转:name_list.reverse()
排序:name_list.sort() --按照ASC码排序.
去重:for i in range(name_list.count('zhang')):
name_list.remove('zhang')
切片:在列表中取出一段数据。顾首不顾尾。name_list[0:3]---切取前3个元素,name_list[0:4:2]隔一个取一个,最后一位代表间隔位长。
name_listp[-2:]---切取最后两个元素
扩展:a = a + b 或 a.extend(b) 把b附加到a上。
dir(name_list) 查看列表可用语法,忽略‘_add_’等双下划线的语法
判断元素是否在列表中:'zhang' in name_list
在某些应用中,将列表的pop和append连用,实现快速的后进先出。(LIFO)
2、元组
2.1 元组是只读的列表,
ages=(11,22,33,44,55)
或 ages = tuple((11, 22, 33, 44, 55))注:元组的元素不可以修改,但元组元素的元素可以修改。eg:元组的一个元素是字典,字典的元素可以修改。
dir(list)
>>>'count','index'
2.2 列表转换为元组 type查看列表类型。tuple(name_list)
元组转列表 list(list)
3.执行脚本传入参数
Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三中:
- Python内部提供的模块
- 业内开源的模块
- 程序员自己开发的模块
Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行执行python脚本时传入的参数
|
1
2
3
4
5
6
|
#!/usr/bin/env python# -*- coding: utf-8 -*-import sysprint sys.argv |
字典对象是可变的,它是一个容器类型,能存储任意个数的Python对象,其中也可包括其他容器类型。
特点:
通过键而不是偏移量读取
任意对象的无序集合
可变长,异构,任意嵌套
属于可变映射类型
字典类型与序列类型的区别:
1.存取和访问数据的方式不同。
2.序列类型只用数字类型的键(从序列的开始按数值顺序索引);
3.映射类型可以用其他对象类型作键(如:数字、字符串、元祖,一般用字符串作键),和序列类型的键不同,映射类型的键直4.接或间接地和存储数据值相关联。
5.映射类型中的数据是无序排列的。这和序列类型是不一样的,序列类型是以数值序排列的。
6.映射类型用键直接“映射”到值。
|
1
2
3
|
person = {"name": "mr.wu", 'age': 18}或person = dict({"name": "mr.wu", 'age': 18}) |
1、键与值用冒号“:”分开;
2、项与项用逗号“,”分开;
3、字典中的键必须是唯一的,而值可以不唯一。
注意:如果字典中的值为数字,最好使用字符串数字形式,如:'age':'040′ 而不用 ‘age':040
常用操作:
D = {‘egg’:3, 'ham':1, 'spam':2}
- 索引 D['egg']
- 新增 D['brunch'] = 'Bacon' 字典的键是无序集合,新增的时候不可以指定键的位置。
- 删除 del D['egg']
D.pop('egg') 指定删除的键 - 循环
- 长度 len(D)
- 显示键,值,键值
>>>list(D.values()) >>>list(D.keys()) >>>list(D.items()) - get方法: D.get(key.default)
当键不存在时,字典遍历寻找后会返回一个missing -key 的错误,然而键不存在的时候通过get可以获得一个系统默认值None或用户自定义的default值。
eg:>>>D.get('spam') 2
print(D.get('toast')) None
D.get('toast', 88) 88 - update


- 循环
D = {'a':1, 'b':2, 'c':3}
for I in D:
print(I, '\t', D[I]) #‘\t’表示以tab分开键和值。 - 异常键值的捕获与修复

python:列表、元组和字典的更多相关文章
- Python—列表元组和字典
Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...
- Python成长笔记 - 基础篇 (三)python列表元组、字典、集合
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 一.列表和元组的操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义 ...
- python—列表,元组,字典
——列表:(中括号括起来:逗号分隔每个元素:列表中的元素可以是数字,字符串,列表,布尔值等等) (列表元素可以被修改) list(类) (有序的) [1]索引取值:切片取值:for循环:whi ...
- Python列表元组和字典解析式
目录 列表解析式List comprehensive 集合解析式Set comprehensive 字典解析式Dict comprehensive 总结 以下内容基于Python 3x 列表解析式Li ...
- python列表元组
python列表元组 索引 切片 追加 删除 长度 循环 包含 定义一个列表 my_list = [] my_list = list() my_list = ['Michael', ' ...
- 【277】◀▶ Python 列表/元组/字典说明
目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...
- Python 列表,元组,字典
0)字符串切片 py_str = 'python' >>>py_str[0] #取第一个字符串,返回值为"p",超出范围会报错 >>>py_st ...
- Python 列表/元组/字典总结
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...
- Python列表,元组,字典,字符串方法笔记
01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
随机推荐
- 树莓派上安装boost库
一.安装boost库 sudo apt-get install libboost-dev aptitude search boost 二.编写测试代码 #include <iostream> ...
- express上传图片
var express = require('express') var app = express() var proxy = require('http-proxy-middleware') co ...
- vue之slot用法
slot元素作为组件模板之中的内容分发插槽.这个元素自身将被替换. 有 name 特性的 slot 称为具名 slot. 有 slot 特性的内容将分发到名字相匹配的具名 slot. 一.单个组件 如 ...
- Android 中RelativeLayout各个属性的含义
转载博客:http://blog.csdn.net/softkexin/article/details/5933589 android:layout_above="@id/xxx" ...
- (转)MyEclipse中使用git
转:https://www.jianshu.com/p/92ee5c99d3a8 Myeclipse老版本可能需要安装一个插件,高版本中已经安装好了. 连接github 当然我们之前已经有仓库了,我们 ...
- layui表单提交使用form.on('submit(sub)',function (){}) 使用ajax请求时回调不执行的原因及解决方法
ayui使用官方的表单模块form.on('submit(sub)',function (){}) 提交,使用ajax请求向后台请求一个执行结果,根据结果进行处理,出现回调无法执行,并且页面出现了刷新 ...
- Chosen 的 optgroup 第一级单击的时候选择二级的全部
相关环境 及 版本 Chosen (v1.6.2) https://harvesthq.github.io/chosen/ jQuery (v1.8.3) 官网 http://jquery.com/ ...
- Autofac框架详解 转载https://www.cnblogs.com/lenmom/p/9081658.html
一.组件 创建出来的对象需要从组件中来获取,组件的创建有如下4种(延续第一篇的Demo,仅仅变动所贴出的代码)方式: 1.类型创建RegisterType AutoFac能够通过反射检查一个类型,选择 ...
- 将libvex移植到Visual Studio编译平台下的经验总结
1. 两难 将libvex从Linux移植到Windows,移植工作聚集于Cross-Compiler,而不是预料的Cross-Platform. VC++ Compiler到目前为止只支持C89标准 ...
- JVM运行时数据区及对象在内存中初始化的过程
JVM运行时数据区 Java虚拟机所管理的内存区域,也称为运行时数据区,分为以下几个运行时数据区,如图所示 程序计数器:当前程序所执行字节码的行号指示器 程序计数器(Program Counter R ...