一:列表(list)

  列表是由一系列按特定顺序排列的元素组成,可以创建包含字母表中的所有字母、数字、或中文的列表,也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。

  在Python中,用方括号[]来表示列表,并用,来分割列表中的元素,如

name=[1,2,3,"cc",[33,44]]        //列表可以嵌套任何类型,

  列表的取值

name=[1,2,3,"cc",[33,44]]
print(name[0]) ##通过索引的方式
name=[1,2,3,"cc",[33,44]]
print(name[1:-1]) ##通过切片的方式,注意:切片取前不取后

  列表的修改

name=[1,2,3,"cc",[33,44]]
name[0]=3
print(name) ##通过索引赋值,可以修改列表中元素的值
##################
name[0:2]=[4,5,6]
print(name) ##同样的,也可以通过切片的方式批量修改元素值 

  补充一下:字符串一旦创建,就不能修改,一旦修改或者拼接,都会造成重新生成字符串。列表可以进行修改。

二:列表的方法(详解)

  1、append

name=[1,2,3]
name.append("czp")
print(name)            //追加,将元素追加到列表的最后

  2、clear

name=[1,2,3]
print(name.clear()) #清空列表,返回值为None

  3、copy

name=[1,2,3]
v=name.copy()
print(v) #浅拷贝,后面的博客会详细介绍深、浅拷贝

  4、count

name=[1,2,3,2,2]
print(name.count(2)) #计算元素出现的次数

  5、extend

name=[1,2,3]
name.extend([11,22])
print(name) ##扩展原列表元素,输出结果:[1, 2, 3, 11, 22]
#与append的比较
name.append([11,22])
print(name) ##追加列表元素,输出结果:[1, 2, 3,[11, 22]]

  6、index

name=[1,2,3]
print(name.index(1)) #获取当前元素的索引位置(左边优先)

  7、insert

name=[1,2,3]
name.insert(0,"czp")
print(name) #插入,可指定插入元素的索引位置

  8、del、pop、remove

name=[1,2,3]
# name.pop(1)
# print(name) #删除,可指定索引位置删除元素,默认是最后一个
# #----------------------------------------------------------------------------------
# name.remove(3)
# print(name) #删除,remove方法中需要指定删除的元素,如果元素不在该列表中,则会报错
#----------------------------------------------------------------------------------
print(name)
del name[1]
print(name) #删除,通过直接添加索引位置的方式

  9、reserve

name=[1,2,3]
name.reverse()
print(name) #反转,将列表中的元素从最后一个元素开始输出

  10、sort

name=[2,1,3]
name.sort()
print(name) #排序,后面会讲到和sorted的区别

  11、字符串与列表之间的相互转化

  将字符串转换成列表,可以理解为将字符串中的每一个字符进行一个for循环,每一个字符作为一个元素放置于列表中,如

name="czp"
l=list(name)
print(l)
输出结果:
['c', 'z', 'p']

  而如果将列表转化为字符串,就需要自己些for循环来完成这一需求,对于既有数字,又有字符的,如下:

name=["c","z","p",11]
s=""
for i in name:
s=s+str(i)
print(s)
输出结果:
czp11

  对于只有字符串的,可以更简便的通过jion方法来实现,如下:

name=["c","z","p",""]
print("".join(name))
输出结果同样为:czp11

二:元组(tuple)

  元组其实就是不可变列表,一旦创建,便不能更改,元组的创建方式使用()的方式,如下

name=(1,2,3,)
print(type(name)) 输出结果为<class 'tuple'>

  元组的方法就很少了,只有两个,一个index和count,用法和列表的用法一样,在这里就不重复介绍了。

  在创建元组的时候,推荐在最后一位元素后加上个“,”,以便于区分。另:元组是有序的

三:字典(dict)

  字典就是一种key-value对的形式,字典是无序的,因为字典中的key必须是唯一的,所示字典这种数据类型可以理解为是自动去重的,字典的value可以是任意值,字符串,数字,列表,字典等等。布尔值、列表、字典不可以作为字典的key

  字典的定义方式用 {} 来表示,如下:

name={
"zhao":11,
"qian":12,
"sun":13,
} 可以看到,字典中都是key-value对的形式

  字典这种数据类型常用的方法有:

  1.clear()

print(name.clear())       清除字典中的数据,输出结果为none

  2.fromkeys()

print(name.fromkeys(["c","z","p"],100))   创建字典,通过列表的方式指定多个key,并将这些key赋予相同的值
输出结果为:
{'c': 100, 'z': 100, 'p': 100}

  3.get()

# v = dic['k11111']
# print(v)
# v = dic.get('k1',111111)
# print(v) 根据Key获取值,key不存在时,可以指定默认值(None)

  4.pop

name={
"k1":"v1",
"k2":"v2"
}
name.pop("k1") //删除,指定删除的key,如果存在,删除,如果key不存在,报错
print(name)
输出结果:
{'k2': 'v2'}

  5.popitem

dic={
"k1":"v1",
"k2":"v2"
}
print(dic.popitem()) Python 字典 popitem() 方法随机返回并删除字典中的一对键和值(一般删除末尾对)。如果字典已经为空,却调用了此方法,就报出KeyError异常
输出结果:
{'k2': 'v2'}

  6.update

dic = {
"k1": 'v1',
"k2": 'v2'
}
dic.update({'k1': ''}) 更新
print(dic)
运行结果:
{'k1': '', 'k2': 'v2'}

  字典的for循环

for i in dic.keys():                     输出字典中所有key的值
print(i)
for i in dic.values():           输出字典中所有value的值
print(i)
for k,v in dic.items():           输出字典中所有的key对应的value值
print(k,v)

  列表、元组、字典都可以通过切片的方式进行增删改查。

Pyhton编程(五)之基本数据类型-列表、元组、字典的更多相关文章

  1. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  2. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  3. python-列表、字典、元组的员工信息处理接口(第二篇(五):基于列表、字典和元组的员工信息处理接口)

    Python之旅]第二篇(五):基于列表.字典和元组的员工信息处理接口 python 列表 字典 元组 员工信息处理接口 摘要: 1.基本需求     编写一个查询员工信息表的程序,实现如下功能: ( ...

  4. Python第三天 序列 数据类型 数值 字符串 列表 元组 字典

    Python第三天 序列  数据类型  数值  字符串  列表  元组  字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...

  5. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  6. 2.9高级变量类型操作(列表 * 元组 * 字典 * 字符串)_内置函数_切片_运算符_for循环

    高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) ...

  7. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  8. python_列表——元组——字典——集合

    列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  9. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  10. Python摸爬滚打之day04----基本数据类型(列表,元组)

    1.列表 列表是可变的, 有序的数据类型,列表是按照添加顺序来保存的,可以存放各种数据类型. 1.1    列表的切片(同字符串) 1.2    列表的增删改查 注意: 列表是可以直接在列表上面进行操 ...

随机推荐

  1. js 关于性能的数据存储

    1.JavaScript中四种基本数据存取位置:字面量,本地变量,数组元素,对象成员.(四个都是存在于内存中) 一般来说:[字面量,局部变量]运行速度>[数组,对象成员] 2.内部属性包含了一个 ...

  2. Java 7 JVM和垃圾收集

    ---恢复内容开始--- 写JAVA程序,一定要了解JVM(JAVA Virtual machine)一些基础知识和垃圾收集.如果对JVM已经很了解了,可以不用继续往下阅读了.本文只针对Java 7, ...

  3. mysql 中select for update 锁表的范围备注

    mysql的锁表范围测试 1.主键明确时,行级锁: 解释:指定主键并且数据存在时,仅锁定指定的行,其它行可以进行操作 实例:指定了锁定id=1的行且数据存在①,在更新1时lock wait超时②,但是 ...

  4. LINUX 笔记-free命令

    free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer. focus@ubuntu:~$ free -h total used free shared b ...

  5. h5实现照片墙效果

    <style> *{ margin: 0; padding: 0; } body{ background: url(images/bg.jpg); } #div1{ width: 100% ...

  6. 如何在openlayer接入矢量数据

    先说矢量数据集接入,我们通过GeoJSON的示例代码(http://openlayers.org/en/latest/examples/geojson.html)了解Openlayers的源代码,确定 ...

  7. Linux驱动模型解析bus之platform bus

    这是内核启动之后要调用的驱动模型的开始代码: drivers/base/init.c/** * driver_init - initialize driver model. * * Call the ...

  8. SQL Server本地连接不上

    1.打开SQL Server 2014配置管理器 2.启动服务

  9. js实现前端下载文件

    在前端下载文本格式的文件时,可采用下面的方式: (1)创建基于文件内容的Blob对象: (2)通过URL上的createObjectURL方法,将blob对象转换成一个能被浏览器解析的文件地址. (3 ...

  10. css媒体查询:响应式网站

    css媒体查询:响应式网站 媒体查询 包含了一个媒体类型和至少一个使用如宽度.高度和颜色等媒体属性来限制样式表范围的表达式.CSS3加入的媒体查询使得无需修改内容便可以使样式应用于某些特定的设备范围. ...