一、列表提供的一些方法

1、append():在原值最后追加

 li = [11,22,33,44,55,]
li.append(99)
print(li)
li.append('中国')
print(li)
 [11, 22, 33, 44, 55, 99]
[11, 22, 33, 44, 55, 99, '中国']

2、clear():清空列表

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

3、copy:拷贝,而且是浅拷贝,有返回值

 li = [11,22,33,44,55,]
li1=li.copy()
print(li1)

4、count:计算列表中某元素出现的次数,有返回值

 li = [11,22,33,22,44,22,55,]
n = li.count(22)
print(n)

返回值:3

5、extend:扩张原列表,参数必须是 可迭代对象

 li = [11,22,33,22,44,22,55,]
li.extend(['北京’,‘长安街'])
print(li) for i in ['北京','长安街']: #extend实际上相当于进行了for循环和append的组合应用
li.append(i)
print(li) li.extend("北京") #字符串也是可迭代对象,经过extend后把每个元素分开加进去
print(li)
li.extend("abc")
print(li) li.append(['北京','长安街']) #对比后,append会把整体加到列表最后,不会分开加进去
print(li)
 [11, 22, 33, 22, 44, 22, 55, '北京’,‘长安街']
[11, 22, 33, 22, 44, 22, 55, '北京’,‘长安街', '北京', '长安街']
[11, 22, 33, 22, 44, 22, 55, '北京’,‘长安街', '北京', '长安街', '北', '京']
[11, 22, 33, 22, 44, 22, 55, '北京’,‘长安街', '北京', '长安街', '北', '京', 'a', 'b', 'c']
[11, 22, 33, 22, 44, 22, 55, '北京’,‘长安街', '北京', '长安街', '北', '京', 'a', 'b', 'c', ['北京', '长安街']]

6、index:获取对应值的索引位置(左边优先)

 li = [11,22,33,22,44,22,55,]
n = li.index(22)
print(n)

返回值:1

7、insert:在指定位置插入元素

 li = [11,22,33,22,44,22,55,]
li.insert(0,77)
print(li)
 [77, 11, 22, 33, 22, 44, 22, 55]

8、pop:删除某个值,并且可以获取删除的值,删除分两种:一种默认删除最后一个;二是指定索引位置删除某元素

 li = [11,22,33,22,44,22,55,]
s = li.pop()
print(li)
print(s)
s1 = li.pop(0)
print(li)
print(s1)
 [11, 22, 33, 22, 44, 22]
55
[22, 33, 22, 44, 22]
11

9、remove:删除指定的元素

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

总结:目前位置已经学了物种删除方法: pop   remove   del li[2]     del li[1:4]   clear

10、reverse:将当前列表进行反转

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

11、sort:排序,默认从小到大排序,括号里设为真时,从大到小排序

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

同类方法,后面还要学 :cmp    key    sorted

二、列表的其他常用方法

1、列表里面可以嵌套任何形式。里面的元素可以是 数字、列表、字符串、布尔值等等

2、可以索引取值

print(li[3])

3、可以切片,获取片段,片段还是列表

print(li[2:5])

print(li[3:-1])

4、可以进行for 循环,因为是可迭代的,也可以whlie循环,

5、列表生成后,可以修给里面的元素;   字符串一旦生成后,里面的元素不可修改

6、可以索引修改、删除里面的元素

 li = [11,55,22,33,22,44,22,]
#索引修改值
li[0]=9
print(li)
#索引删除值
del li[1]
print(li)
 [9, 55, 22, 33, 22, 44, 22]
[9, 22, 33, 22, 44, 22]

7、切片获取片段,切片删除片段

 li2 = [11,55,22,33,22,44,22,]
#切片
ss = li2[2:-1]
print(ss)
#删除一段
del li2[2:-1]
print(li2)
 [22, 33, 22, 44]
[11, 55, 22]

8、in 操作、 深度索引操作

 li = [22,44,5,7,"china",[99,"nice"],"good",True]
v1 = 22 in li
print(v1)
v2 = "nice" in li
print(v2) v = li[5][1]
print(v)
 True
False
nice

9、转换

str 转  int

 s = ""
n = int(s)
print(n)

int 转str

 n = 1223454
s = str(n)

字符串转列表

 s = "abcdefg"
li = list(s)
print(li)
 ['a', 'b', 'c', 'd', 'e', 'f', 'g']

列表转字符串:分两种:一是列表里只有字符串形式的元素,这时既可用for循环,又可用join法;二是列表里除了有字符串,还有其他类型,只能用for循环

 li = [22,4,4,66,"hello","world"]
s = ""
for i in li:
s =s + str(i)
print(s) li2 = ["hello","world"]
s = "".join(li2)
print(s)
 224466helloworld
helloworld

10、补充

字符串创建以后不可以被修改

 s = "abcdefg"
s1=s.replace("a","") #这里的改动,不是把原来的改了,而是在内存里另外开辟了一块空间,将新的字符串存起来了,通过下面两个print输出结果可以证明
print(s)
print(s1)
 abcdefg
0bcdefg

字符串不可以通过索引来修改

#########i列表有序,元素可以被修改###############

类与对象的区别

三、python沉淀之路--列表(list)的更多相关文章

  1. 十七、python沉淀之路--三元表达式、列表解析

    一.三元表达式 a = '骑车' res = '好天气' if a == '骑车' else '睡觉' print(res) 睡觉 解析:res = '好天气'        if a == '骑车' ...

  2. 十八、python沉淀之路--生成器

    一.生成器 生成器总结:语法上和函数类似:生成器函数和常规函数几乎是一样的.他们都是使用def语句进行定义,差别在于生成器使用yield语句返回一个值,而常规函数使用return语句返回一个值.自动实 ...

  3. 十六、python沉淀之路--迭代器

    一.迭代器 1.什么是迭代器协议:对象必须提供一个next方法,执行该方法要返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代(只能往后走,不能往前走). 2.可迭代对象:实 ...

  4. 七、python沉淀之路--集合

    一. 1.字符串转集合 s = 'hello' se = set(s) print(se) {'e', 'o', 'h', 'l'} 2.列表转集合 l1 = ['hello','python','n ...

  5. 十五、python沉淀之路--eval()的用法

    一.eval函数 python eval() 函数的功能:将字符串str当成有效的表达式来求值并返回计算结果. 语法:eval(source[, globals[, locals]]) -> v ...

  6. 十三、python沉淀之路--文件操作

    一.文件的读操作 例1 f = open('学习',encoding='utf-8') #首先要打开文件,不然直接读,是读不出来的 data = f.read() #read后的括号里不添加任何东西 ...

  7. 九、python沉淀之路--递归、全局变量、局部变量、作用域

    一.递归 1.递归函数,同时使用嵌套,并且是将别的函数作用于调用函数里面 例1 num = [1,2,3,4,5] def add_one(i): return i+1 def reduce(i): ...

  8. 六、python沉淀之路--int str list tuple dict 重点总结

    一.数字int(..)二.字符串replace/find/join/strip/startswith/split/upper/lower/formattempalte = "i am {na ...

  9. 五、python沉淀之路--字典

    一. 1.根据序列,创建字典,并指定统一的值 v = dict.fromkeys(["],222) print(v) {': 222} 2.根据key 获取值,key不存在时,报错:get方 ...

随机推荐

  1. ETL应用:使用shell实现文件级校验的方法

    BI应用中,对接口规范性约束很重要,接口文件提供需要配套提供该文件的校验文件,校验文件格式如下: 序号 信息内容 数据类型及长度 说明 1 接口数据文件名称 CHAR(50) 2 文件的大小(字节数) ...

  2. UnsatisfiedLinkError X.so is 64-bit instead of 32-bit之Android 64 bit SO加载机制

    http://blog.csdn.net/canney_chen/article/details/50633982 今天用户反馈应用闪退崩溃了.然后找呀找… 过程原来是这样的: 还是说下项目背景 应用 ...

  3. Struts2笔记02——Struts2 概述(转)

    原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm Struts2是基于MVC设计模式的一种流行.成熟的We ...

  4. 2.3UML建模之用例图关系

    一.UML简介 UML(统一建模语言,Unified Modeling Language)是一种定义良好.易于表达.功能强大且普遍适用的可视化建模语言.它融入了软件工程领域的新思想.新方法和新技术.它 ...

  5. JSP DAO(Model)

    示例代码: 1. Users类 package com.po; public class Users { private String username; private String passwor ...

  6. NLP学习常用的网页链接

    [2016.7.5] 这是以前学习的时候整理的,放到博客里面,以后再有的话会更新~ 1.一个国外的学者维护的博客,介绍NLP [链接](http://nlpers.blogspot.jp/) 2.北京 ...

  7. Centos7 搭建DNS服务器与原理配置详解

    在搭建我们自己DNS服务器之前,先必须了解下DNS服务器的作用和原理. DNS是在互联网上进行域名解析到对应IP地址的服务器,保存互联网上所有的IP与域名的对应信息,然后将我们对网址的访问,解析成IP ...

  8. sqlserver的疑难杂症解析

    1.电脑修改ip后ssms通过ip访问失败 通过计算机名可以访问成功,但通过修改后的ip访问却失败了! 解决方法:打开Sql Server Configuration Manager -> SQ ...

  9. Phoenix表和索引分区数对插入和查询性能的影响

    1. 概述 1.1 HBase概述 HBase由master节点和region server节点组成.在100-105集群上,100和101是master节点,102-105是region serve ...

  10. 【疯了Labview】(一)仿JKI的RCF 挂件

    最近在疯狂的学习C#中,学习的最好的一个途径便是论坛,发帖,看帖和被骂,新手往往在这个过程中慢慢长大一直想做个类似JKI RCF挂件的东西,目前实现了,想想其实思路也不是很难, RCF是JKI做的通过 ...