一:列表(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. 解决 Win10 UWP 无法使用 ss 连接

    一旦使用了 ss, 那么很多应用就无法连接网络. 本文提供一个方法可以简单使用ss提供的代理. 多谢 wtwsgs 提供方法:http://blog.csdn.net/wtwsgs/article/d ...

  2. UVa1605,Building for UN

    我比较好奇的是uva后台是怎么测这题的 没什么可说的,那些不想敲但还是想直接交这题的直接copy过去吧 #include <iostream> #include <cstring&g ...

  3. 怎用不用工具创建一个javaWeb项目

    整体步骤是: 1: 新建一个文件夹:  以项目名称命名 2:在新建的文件夹下再新建一个文件夹 WEB-INF  (注意:大小写) 和 一个文件  index.jsp : index.jsp里面的代码: ...

  4. sublime中安装package control总是失败

    今天下载了个sublime编辑器,要运行vue文件,想让vue也能高亮显示,在网上搜了一下如何安装.但总是提示控制器没有安装Package Control:There are no packages ...

  5. python + selenium 自动化测试框架

    分享一个网站自动化测试框架 结构如下: test_project|--logs|---pages |---register_page.py|      |---base_page.py|---test ...

  6. Android Studio中的Java控制台中出现乱码问题?

    今天在用Android studio 中敲代码时发现控制台出不了汉字,一打汉字全是乱码的.在此特供解决方案. 在Java的工程目录build.gradle下添加如下代码: 1.新版gradle tas ...

  7. LeetCode 572. Subtree of Another Tree (是否是另一个树的子树)

    Given two non-empty binary trees s and t, check whether tree t has exactly the same structure and no ...

  8. 【原创】基于禅道的Bug管理操作规范

    1. 禅道简介 禅道是一个基于"敏捷开发"模式的软件开发全生命周期管理软件,在国内的软件开发公司里占据了超过70%的份额,从大公司到小公司,都能适用. 禅道官网:http://ww ...

  9. ES6新特性 Class的实现

    ES5之前类的继承是靠原型实现的,而这一过程的实现又涉及到一大堆的原型定义,特别是ES5推出了Object.definePorperty()方法后,代码更加晦涩.但是这种方式正是javascript这 ...

  10. django开发中利用 缓存文件 进行页面缓存

    首先我们先来了解下浏览器的缓存 浏览器缓存机制 Cache-control策略 Cache-Control与Expires的作用一致,都是指明当前资源的有效期,控制浏览器是否直接从浏览器缓存取数据还是 ...