Python基础知识(6):基本数据类型之列表

在Python中,最基本的数据结构是序列。序列中的每个元素被分配一个序号——即元素的位置,也称为索引。第一个索引从0开始,如果要从右边开始,序列中的最后一个元素标记为-1,倒数第二个标记为-2,以此类推。Python包含6种内建序列:字符串、列表、元组、Unicode字符串、buffer对象、xrange对象。

1、列表中的元素用括号括起来,中间用逗号隔开

如[1,12,"age","Alice"]

2、列表中的元素可以是数字、字符串、列表、布尔值等

tag=[1,12,"mike",[3,6],True]

3、列表中的元素可以被修改

元素赋值

x=[1,2,3]
x[1]=7
x

结果:[1, 7, 3]

4、列表可以通过索引获取元素

tag=[1,12,"mike",[3,6],True]

tag[0:3]

结果:[3, 6]

5、分片

列表也有分片操作,通过两个索引来实现

tag=[1,12,"mike",[3,6],True]

tag[0:3]

结果:

[1, 12, 'mike']

进行分片是需要指点开始和结束点,同时可以自己设置步长,默认步长为1;步长可以是负数,这时分片会从右边开始

num=[1,2,3,4,5,6,7,8,9,10]

num[0:10:3]

结果:

[1, 4, 7, 10]

注:可以通过分片进行元素赋值和删除元素

6、序列相加

通过加运算符进行序列连接

[1,2,3]+[4,5]的结果为[1,2,3,4,5]

7、乘法

数字乘以一个序列会生成新的序列

["fly"] * 5

结果:

['fly', 'fly', 'fly', 'fly', 'fly']

8、成员资格

要检查一个序列是否在序列中,可以用in运算符

name=["Alice","Bob","Charle"]
"Bob" in name

结果:True

9、删除元素

使用del语句删除函数

name=["Alice","Bob","Charle"]
del name[1]
name

结果:

['Alice', 'Charle']

10、列表方法

方法可以这样进行调用:

对象.方法(参数)

(1)append:在列表末尾追加一个元素

num=[1,2,3,4,5,6,7,8,9,10]
num.append(19)
num

结果:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 19]

(2)count:统计某个元素在列表中出现的次数

x=[1,3,[1,5],1,[2,1,[1,1]],4]
x.count(1)

结果:2

(3)extend:在列表末尾追加一个列表

a=[1,2,3]
b=[7,8]
a.extend(b)
a

结果:

[1, 2, 3, 7, 8]

(4)index:在列表中找到与某个值匹配的第一个匹配项的索引位置

sen=["Something","just","like","this"]
sen.index("like")

结果:4

(5)insert:将元素插入到列表中

num=[1, 2, 3, 7, 8]
num.insert(3,"four")
num

结果:

[1, 2, 3, 'four', 7, 8]

注:可以通过分片赋值实现插入操作

(6)pop:移除列表中的某个元素并返回该元素的值,默认移除最后一个元素

num=[1, 2, 3, 7, 8]
num.pop()

结果:8

(7)remove:移除列表中与某个值匹配的第一个匹配项

sen=["to","be","or","not","to","be"]
sen.remove("to")
sen

结果:

['be', 'or', 'not', 'to', 'be']

(8)reserve:把列表中的元素反向存放

num=[1, 2, 3, 'four', 7, 8]
num.reverse()
num

结果:

[8, 7, 'four', 3, 2, 1]

(9)sort:对列表进行排序

x=[7,3,4,1,8]
x.sort()
x

结果:

[1, 3, 4, 7, 8]

注:sort可以调用reverse()方法使列表反向排序

x=[7,3,4,1,8]
x.sort(reverse=True)
x

结果:

[8, 7, 4, 3, 1]

Python学习之旅(七)的更多相关文章

  1. 180分钟的python学习之旅

    最近在很多地方都可以看到Python的身影,尤其在人工智能等科学领域,其丰富的科学计算等方面类库无比强大.很多身边的哥们也提到Python非常的简洁方便,比如用Django搭建一个见得网站只需要半天时 ...

  2. Python学习笔记(七)

    Python学习笔记(七): 深浅拷贝 Set-集合 函数 1. 深浅拷贝 1. 浅拷贝-多层嵌套只拷贝第一层 a = [[1,2],3,4] b = a.copy() print(b) # 结果:[ ...

  3. Python学习系列(七)( 数据库编程)

    Python学习系列(七)( 数据库编程)        Python学习系列(六)(模块) 一,MySQL-Python插件       Python里操作MySQL数据库,需要Python下安装访 ...

  4. [Python学习笔记][第七章Python文件操作]

    2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...

  5. python学习之旅

    python学习分类 python基础    +- day01——python初始.变量.常量.注释.基础数据类型.输入.if day02——while.字符串格式化.运算符.编码初识 day03—— ...

  6. 小猪的Python学习之旅 —— 16.再尝Python数据分析:采集拉勾网数据分析Android就业行情...

    一句话概括本文: 爬取拉钩Android职位相关数据,利用numpy,pandas和matplotlib对招人公司 情况和招聘要求进行数据分析. 引言: 在写完上一篇<浅尝Python数据分析: ...

  7. python学习之旅:array 转 list

    最近学习python,记录学习的点滴. >>> import numpy as np >>> a = np.array([[1,2],[3,4]]) >> ...

  8. Python学习之旅--第一周--初识Python

    一:Python是一种什么样的语言? 1.语言的分类: a.编译型语言和解释性语言: 通常所说的计算机语言分为编译型和解释型语言.编译型语言典型的如C,C++,通常在程序执行之前必须经由编译器编译成机 ...

  9. Python学习之旅(三十八)

    Python基础知识(37):访问数据库(Ⅱ) 二.MySQL MySQL是Web世界中使用最广泛的数据库服务器.SQLite的特点是轻量级.可嵌入,但不能承受高并发访问,适合桌面和移动应用.而MyS ...

随机推荐

  1. 去哪儿数据VS美团数据

    介绍 之前在去哪儿做数据RD,今年来到美团做数据RD,碰巧都是门票方向(现在去哪儿叫度假,美团叫境内),下面都是基于这两个部门的对比 相同点 都有独立的数据团队,老大都重视数据,主要开发语言都是SQL ...

  2. App安全

    经常做的网络参数加密解密,以及防止数据重放之外,还提到了防范反编译的风险,其实Apple算比较安全的了,反编译过来也就看到.h文件....但把代码混淆还是会比较好些. 一.iOS 中的网络加密 公司的 ...

  3. 构建自己的 Smart Life 私有云(一)-> 破解涂鸦智能插座

    博客搬迁至https://blog.wangjiegulu.com RSS订阅:https://blog.wangjiegulu.com/feed.xml 原文链接:https://blog.wang ...

  4. service_names配置不正确,导致dg创建失败

    service_names配置不正确,导致dg创建失败 伙伴发来消息,创建dg后,主备一直无法进行日志同步. 以下是查看过程 备库的alert日志: 2018-11-13T17:47:36.23129 ...

  5. Jackson 解析json数据之忽略解析字段注解@JsonIgnoreProperties

    转自:http://blog.csdn.net/ngl272/article/details/70217104 以前解析json用的惯的就是Google的gson了,用惯了基本就用它了,一直也没发现什 ...

  6. 【推荐图书】+ 基于Nios II的嵌入式SoPC系统设计与Verilog开发实例+C#入门经典等

    [推荐图书]+ 基于Nios II的嵌入式SoPC系统设计与Verilog开发实例+C#入门经典等 3赞 发表于 2016/7/4 21:14:12 阅读(1921) 评论(3) 初次接触FPGA,到 ...

  7. 如何免费的将本地Web服务映射到外网

    链接地址:https://hongmaju.github.io/2018/05/13/ngrok%E5%B0%86%E6%9C%AC%E5%9C%B0Web%E6%9C%8D%E5%8A%A1%E6% ...

  8. nginx实现限速

    项目中有一个需求,需要限制每个容器的网速,避免某些容器占用太多资源,导致其他容器无法使用,但是docker对于网速的限制支持的有点弱,由于容器中的所有进程和APP的交互都是通过nginx的,所以就想到 ...

  9. Spring的两种代理方式:JDK动态代理和CGLIB动态代理

    代理模式 代理模式的英文叫做Proxy或Surrogate,中文都可译为”代理“,所谓代理,就是一个人或者一个机构代表另一个人或者另一个机构采取行动.在一些情况下,一个客户不想或者不能够直接引用一个对 ...

  10. Cordova Error: cmd: Command failed with exit code ENOENT

    执行Cordova platform add android时提示:Error: cmd: Command failed with exit code ENOENT. 网上搜索后得到如下结果: 比对着 ...