list:列表 
         >>>----可以被
修改。修改成元素,元素可以使单独的数字,也可以是:新的list。
                通过:链表。。每个元素存储的时候,同时会指向下一个元素。
二、list编辑修改方法

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
2.1 索引
li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
print(li[1])
结果:2

答案

2.2  切片

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
b=li[0:-1]
c=li[0:4]
d=li[1:3]
print(b)
print(c)
print(d)
[1, 2, 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a']]
[1, 2, 'alex', 'ds']
[2, 'alex']

答案

2.3 修改:切片修改,变为元素。。单个修改,则是插入新的列表

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
li[1]=[11,12,23]
print(li)
li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
li[1:3]=[32,23,23,233]
print(li)
[1, [11, 12, 23], 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']

答案

[1, 32, 23, 23, 233, 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']

答案

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
li[1]=120
print(li)
li[1]=[11,12,23]
print(li)
a=li[1:3]
print(a)
li[1:3]=[32,23,23,233]
print(li)
[1, 120, 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']
[1, [11, 12, 23], 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']
[[11, 12, 23], 'alex']
[1, 32, 23, 23, 233, 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']

答案

2.4 删除

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
del li[1]
print(li)
del li[0:2]
print(li)
[1, 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']
['ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']

答案

2.5   for循环、while循环

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
for i in li:
print(i)
1
2
alex
ds
都是
alex
['是正文', '赖晓', 'a']
jda

答案

2.6 in 判断操作

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
v=2 in li
print(v)
True

答案

2.7  操作

li = [1, 12, 9, "age", ["石振文", ["", 10], "庞麦郎"], "alex", True]
v=li[3][1][0]
print(v)
结果:19

答案

2.8 字符串转化为列表

a="dsdsadasdasl"
v=list(a)
print(v)
['d', 's', 'd', 's', 'a', 'd', 'a', 's', 'd', 'a', 's', 'l']

答案

2.9 列表→字符串

1、整体转化

li=[1,2,'alex','ds','都是','alex','jda']
v=str(li)
print(v)
# 把整个li整体转化为字符串
[1, 2, 'alex', 'ds', '都是', 'alex', 'jda']

答案

2、每个元素转化:只能自己写for循环。列表中:既有数字又有字符串

s=''
li1=[1,2,'alex','ds','都是','alex','jda']
for i in li1:
a=str(i)
s += a
print(s)
12alexds都是alexjda

答案

3、列表中只有字符串:可用jion进行拼接

li1=['alex','ds','都是','alex','jda']

print("".join(li1))
alexds都是alexjda

答案

2.10  用len()函数可以获得list元素的个数:

li = [1, 12, 9, "age", ["石振文", ["", 10], "庞麦郎"], "alex", True]
print(len(li))
运行结果:7

答案

三、list内置方法大全

# 对象.方法(..)  list.append(self.参数)

3.1、append(self.,p_object):原来自最后追加。

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']

#1、append 原来值最后追加.不需要一个新的变量来接受,a=li.append(5)

li.append(5)
li.append("dsds")
li.append([12,'dsds'])
print(li)
[1, 2, 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda', 5, 'dsds', [12, 'dsds']]

答案

3.2 li.clear 清空列表

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
li.clear()
print(li)
[]

答案

3.3 li.copy 拷贝 浅拷贝

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
v=li.copy()
print(v)
[1, 2, 'alex', 'ds', '都是', 'alex', ['是正文', '赖晓', 'a'], 'jda']

答案

3.4 count 计算元素出现的次数

li=[1,2,'alex','ds','都是','alex',['是正文','赖晓','a'],'jda']
v=li.count("alex")
print(v)
运行结果;2

答案

3.5  extend(self,iterable)扩展原列表,iterable→参数:可迭代对象:可以被for循环执行的。字符串、列表

li = [11, 22, 33, 22, 44]
li.extend([9898,“不得了”])
print(li)
[11, 22, 33, 22, 44, 9898, '不得了']

答案

append:

li = [11, 22, 33, 22, 44]
li.append([9898,"不得了"])
print(li)
[11, 22, 33, 22, 44, [9898, '不得了']]

答案

extend相当于内部循环append到列表最后:

li = [11, 22, 33, 22, 44]
li.extend([9898,"不得了"])
print(li) li = [11, 22, 33, 22, 44]
for i in [9898,"不得了"]:
li.append(i)
print(li)
li=[11, 22, 33, 22, 44, 9898, '不得了']
li.extend("不得了")
print(li)
前两个答案:[11, 22, 33, 22, 44, 9898, '不得了']
第三个代码:[11, 22, 33, 22, 44, 9898, '不得了', '不', '得', '了']

答案

3.6 index(self,value,start=None,stop=None)  找某个值索引位置。没有参数则从左到右,找到第一个。参数可以加索引的起始位置和结束位置

li = [11, 22, 33, 22, 44]
v= li.index(22)
print(v)
s= li.index(33)
print(s)
答案:1、2

3.7  insert .insert(self, index, p_object) 插入值的具体位置和插入的值。

li = [11, 22, 33, 22, 44]
li.insert(0,99) (0,[99])也是可以的
print(li)
[99, 11, 22, 33, 22, 44]

答案

3.8  pop(self,index=None)  删除某个值(1.指定索引;2. 默认最后一个),并获取删除的值

li = [11, 22, 33, 22, 44]
v = li.pop()
print(li)
print(v) li = [11, 22, 33, 22, 44]
v = li.pop(1)
print(li)
print(v)
[11, 22, 33, 22]
44 [11, 33, 22, 44]
22

答案

3.9 remove(self,value).

li = [11, 22, 33, 22, 44]  #删除列表中的指定值,左边优先 删除第一个,就停止
li.remove(22)
print(li)
[11, 33, 22, 44]

答案

目前列表删除的方式:pop remove del li[0] del li[7:9] clear

3.10  rerevse 将当前列表进行翻转。

li = [11, 22, 33, 22, 44]
li.reverse()
print(li)
[44, 22, 33, 22, 11]

答案

3.11 sort(self,key=None,reverse=False) 排序 从小到大

li = [11,44, 22, 33, 22]
print(li)
li.sort() #从小到大排序
print(li) li = [11,44, 22, 33, 22]
print(li)
li.sort(reverse=True) #从大到小排序
print(li)
[11, 44, 22, 33, 22]
[11, 22, 22, 33, 44] [11, 44, 22, 33, 22]
[44, 33, 22, 22, 11]

答案

tuple  元祖 :另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改→增加,修改,删除都不行.

1.1、书写方法:

tu = (111,"alex",(11,22),[(33,44)],True,33,44,)

1.2、索引取值

tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
v = tu[0]
print(v)
111

答案

1.3、切片

tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
v = tu[0:2]
print(v)
(111, 'alex')

答案

1.4、for循环:可迭代对象

tu = (111,"alex",(11,22),[(33,44)],True,33,44,)
for item in tu:
print(item)
111
alex
(11, 22)
[(33, 44)]
True
33
44

答案

三、字典:dict

字典的key中:

①True和1不能同时存在,若存在的话就显示1个。

②列表、字典不能作为key。列表可以被修改为动态;

③元祖可以作为字典的key

以后知识:字典是作为哈希表来保存的。key会转化为:哈希值,values,则原样提取和转化。

由于列表不支持直接转化为哈希表。所以列表不能作为key

字典的value:可以是任何值,

info={'k1':'v1','k2':'v2'}   键值对

info={

    'k1':18,

     'k2':True,

'k3':[11,

22,

33,

{

'kk1':'vv1',

'kk2':'vv2',

'kk3':'vv3'}

],

'k4':(11,22,33,44),

}

字典方法大全:

3.1、通过索引定位相位的值:

v=info['k1']
print(v)
结果是:18

答案

v=info['k3'][3]['kk3']→vv3

3.2、删除  del info['key']

info = {
"k1": 18,
2: True,
"k3": [
11,
[],
(),
22,
33,
{
'kk1': 'vv1',
'kk2': 'vv2',
'kk3': (11,22),
}
],
"k4": (11,22,33,44)
}
del info['k1']
print(info)
删除相关的

del info['k3'][5]['kk1']
print(info)
{2: True, 'k3': [11, [], (), 22, 33, {'kk3': (11, 22), 'kk2': 'vv2'}], 'k4': (11, 22, 33, 44), 'k1': 18}

答案

3.3 进行for循环

info = {
"k1": 18,
2: True,
"k3": [
11,
[],
(),
22,
33,
{
'kk1': 'vv1',
'kk2': 'vv2',
'kk3': (11,22),
}
],
"k4": (11,22,33,44)
}
for item in info:
print(item)
 答案
for item in info.values():
print(item)
[11, [], (), 22, 33, {'kk2': 'vv2', 'kk3': (11, 22), 'kk1': 'vv1'}]
True
(11, 22, 33, 44)
18

答案

for  k,v in info.items():
print(k,v)
k3 [11, [], (), 22, 33, {'kk2': 'vv2', 'kk1': 'vv1', 'kk3': (11, 22)}]
k1 18
2 True
k4 (11, 22, 33, 44)

答案

3.4

python学习-day12:列表、元祖、字典介绍和内置的更多相关文章

  1. python学习之列表,元祖,字典

    python基础 列表  [ ] stats =[1,2,3,4,5] 元素1,2,3,4,5 下标,索引,角标,初始从0开始 增加 stats.append(7)#append方法添加 stats. ...

  2. python学习-字符串 列表 元祖

    目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...

  3. python学习 day12 (3月18日)----(装饰器内置函数)

    读时间函数: # import time # def func(): # start_time = time.time() # 代码运行之前的时间 # print('这是一个func函数') # ti ...

  4. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  5. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

  6. python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍

    目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...

  7. python学习8—函数之高阶函数与内置函数

    python学习8—函数之高阶函数与内置函数 1. 高阶函数 a. map()函数 对第二个输入的参数进行第一个输入的参数指定的操作.map()函数的返回值是一个迭代器,只可以迭代一次,迭代过后会被释 ...

  8. Python学习笔记---切片 列表 元祖 字典 集合

    列表[1,2,3,2]#[] 元祖(1,2,3,2)#() 字典{1:2,3:2}#{} 集合{1,2,3,2}#{} 1,集合与列表的区别,集合里不能有重复元素 2.字典与集合的区别,都是用花括号表 ...

  9. python-基础-字符串-列表-元祖-字典2

    接上:http://www.cnblogs.com/liu-wang/p/8973273.html 3 元组 4 字典 4.1 字典的介绍 <2>软件开发中的字典 变量info为字典类型: ...

随机推荐

  1. css学习笔记 2

    css中的简写: 颜色的简写有三种:十六进制的形式.rgb(a).颜色名称. 单位的省略:当属性值为0px时,可以简写为0. margin和padding的简写,不多说了. border的简写:bor ...

  2. [转][C/C++] 怎样不用中间变量temp 实现两个数交换

    第一类方法也是常用的方法,通过多次的数值计算来完成交换,到现在知道的有下面三种: (1)加减法. a = a + b; b = a - b; a = a - b; 该方法可以交换整型和浮点型数值的变量 ...

  3. Question and Answer

    1.VS2013使用EntityFrame问题解决办法 解决办法参照博客http://pinter.org/?p=2374 使用到EntityFrame的项目配置文件修改如下: 项目中凡是使用到DbC ...

  4. mysql 处理查询请求过程

    需要搞清楚查询为什么会慢,就要搞清楚mysql处理查询请求的过程: 1.客户端发送SQL请求给服务器 2.服务器检查是否可以在查询缓存中命中该SQL   查询缓存对SQL性能的影响. 1.需要对缓存加 ...

  5. HttpCache ETag与Last-Modified与Expires

    Last-Modified 是检查一个资源最后修改时间.如果时间过期了则返回资源内容.如果没过期,返回304.当Last-Modified更新了,但是资源本质上没有更新,比如资源是A,Last-Mod ...

  6. HDU 3397 Sequence operation

    题目:下列操作 Change operations:0 a b change all characters into '0's in [a , b]1 a b change all character ...

  7. ExtJs中gridpanel分组后组名排序

    /** * 定义降序的groupingStore */ var DescGroupingStore = Ext.extend(Ext.data.GroupingStore, { groupDir : ...

  8. Jenkins快速上手

    一.Jenkins下载安装 1.到官网下载jenkins.war包:http://jenkins-ci.org/ 2.安装方法有两种: a) 把下载下来的jenkins.war包放到文件夹下,如C:\ ...

  9. 《算法竞赛入门经典》5.41数学基础-Cantor的数表

    如下数列,第一项是1/1,第二项是1/2,第三项是2/1,第四项是3/1,第五项是2/2,…….输入n,输出第n项.1/1   1/2   1/3   1/4   1/52/1   2/2   2/3 ...

  10. vertical-align及IE7下的inline-block

    在IE7下,是不支持inline-block元素的,当对块级元素如dl进行inline-block样式设置时,在IE7浏览器是下样式是不会生效的. 若要在IE7下实现将块级元素设置为内联元素,可以这样 ...