1.列表的增删改查

1)  append insert extend

li = ["ysg",[1,2,3,4,5],"peipei","梦幻","利金斯"]

#append 在末尾增加
li.append('阴天')
li.append("")
li.append("[12,13,14]")
print(li)

小示例:循环向列表中添加数据,输入 "Q|q" 结束
li = []
while 1:
username = input(">>>")
if username.strip().upper() == 'Q':
  break
else:
  li.append(username)
print(li) # insert 插入 li=["abc","efg"]
li.insert(1,"d")
print(li) #extend 迭代插人到最后
# 'int' object is not iterable li=["abc","efg"]
li.extend("亦双弓")
print(li) li.extend([1,2,3])
print(li) li.extend(123)
print(li)

2)删除 pop remove clear del

li = ["ysg",[1,2,3,4,5],"peipei","梦幻","利金斯"]

name = li.pop(1)
print(name,li) #有返回值
print(li) name = li.pop() #默认删除最后一个值
print(name,li)

li.remove([1,2,3,4,5]) #按元素删除,没有返回值
print(li)

li.clear() #清空列表
print(li)

del li # 删除列表
print(li) del li[3:] #del 结合切片删除
print(li)

3)改 

li = ["ysg",[1,2,3,4,5],"peipei","梦幻","利金斯"]
li[1] = "and"
li[1] = [1,2,3]
print(li) #切片 当添加的值小于切片的范围时,只添加已有的值
#即:添加的原理是 先删除后添加
li[0:3] = "ysg"
print (li) li[0:3] = "hw"
print (li) #如果添加的值大于切片的范围时,大于的值在切片范围后继续添加
li[0:3] = [1,2,3,"abc","efg"]
print(li)

4)查 for循环 切片

li = ["ysg",[1,2,3],"peipei","黎幻镇","利金斯"]

for i in li:
print(i) print(li[0:3])

2.公共方法

li = ["ysg",[1,2,3],"ysg","peipei","黎幻镇","利金斯"]

l = len(li) #数组长度
print(l) print(li.count('ysg')) #统计出现次数 print (li.index("peipei")) #索引出现位置,默认第一次出现的位置

3.排序

li = [1,5,3,8,7,9,2,3]

li.sort()  #sort 排序是最快的 因为使用 C 语言的写的
print(li) li.sort(reverse=True) #倒序
print(li) li.reverse() #反转
print(li)

4.列表的嵌套

#1)找到 梦幻 中的幻字

print(li[4][1])

# 2)把 利金斯 中的 金斯 改为 益

li[5]="利益"
print(li) li[5]=li[5].replace("金斯","益")
print(li) # 3)把 peipei 首字母大写 li[3]=li[3].capitalize()
print(li[3],li)

5.元组

#只读列表,可循环查询 可切片
#儿子不能改 孙子可能可以改 yu=(12,3,'ysg',[1,23,'ysg'])
print(yu[2])
print(yu[3]) for i in yu:
print(i) #修改 元祖中的数组
yu[3][1]=2
print(yu) #修改 元祖中的数组
yu[3][2]=yu[3][2].upper()
print(yu) #在元祖中的数组添加值 yu[3].append("end")
print(yu)

7.join 列表转换为字符串

#字符串转换为列表 split
#注意:使用 join 时,列表中不能再存在列表
li = ["ysg","ysg","peipei","黎幻镇","利金斯"]
print(li) j = "_".join(li)
print(j)

8. range 生成数字列表,顾头不顾尾

for i in range(0,10):
print(i) for i in range(3,10):
print(i) for i in range(10):
print(i) for i in range(0,10,2):
print(i) for i in range(10,0,-1):
print(i) for i in range(10,0,-2):
print(i) for i in range(0,10,-1): #什么都不输出
print(i) for i in range(10,-10,-2):
print(i) for i in range(10,-2): #什么都不输出
print(i) for i in range(-2,10): # -2 为开头
print(i)

day 4 - 1 列表的更多相关文章

  1. ASP.NET Aries 入门开发教程8:树型列表及自定义右键菜单

    前言: 前面几篇重点都在讲普通列表的相关操作. 本篇主要讲树型列表的操作. 框架在设计时,已经把树型列表和普通列表全面统一了操作,用法几乎是一致的. 下面介绍一些差距化的内容: 1:树型列表绑定: v ...

  2. ASP.NET Aries 入门开发教程6:列表数据表格的格式化处理及行内编辑

    前言: 为了赶进度,周末也写文了! 前几篇讲完查询框和工具栏,这节讲表格数据相关的操作. 先看一下列表: 接下来我们有很多事情可以做. 1:格式化 - 键值的翻译 对于“启用”列,已经配置了格式化 # ...

  3. ASP.NET Aries 入门开发教程3:开发一个列表页面及操控查询区

    前言: Aries框架毕竟是开发框架,所以重点还是要写代码的,这样开发人员才不会失业,哈. 步骤1:新建html 建一个Html,主要有三步: 1:引入Aries.Loader.js 2:弄一个tab ...

  4. ASP.NET Aries 入门开发教程2:配置出一个简单的列表页面

    前言: 朋友们都期待我稳定地工作,但创业公司若要躺下,也非意念可控. 若人生注定了风雨飘摇,那就雨中前行了. 最机开始看聊新的工作机会,欢迎推荐,创业公司也可! 同时,趁着自由时间,抓紧把这系列教程给 ...

  5. 散列表(hash table)——算法导论(13)

    1. 引言 许多应用都需要动态集合结构,它至少需要支持Insert,search和delete字典操作.散列表(hash table)是实现字典操作的一种有效的数据结构. 2. 直接寻址表 在介绍散列 ...

  6. Python列表去重

    标题有语病,其实是这样的: 假设有两个列表 : L1 = [1,2,3,4] ; L2 = [1,2,5,6] 然后去掉L1中包含的L2的元素 直接这样当然是不行的: def removeExists ...

  7. WPF 微信 MVVM 【续】修复部分用户无法获取列表

    看过我WPF 微信 MVVM这篇文章的朋友,应该知道我里面提到了我有一个小号是无法获取列表的,始终也没找到原因. 前两天经过GitHub上h4dex大神的指导,知道了原因,是因为微信在登录以后,web ...

  8. Emoji选项列表

    一.需要的前提文件 从网上下载Emoji的表情包,当然是png的图片,因为WPF不支持彩色的Emoji,所以,做列表的时候,需要用图片. 随着压缩包一起的还有一个Emoji.xml文件,文件的层级结构 ...

  9. UWP开发必备:常用数据列表控件汇总比较

    今天是想通过实例将UWP开发常用的数据列表做汇总比较,作为以后项目开发参考.UWP开发必备知识点总结请参照[UWP开发必备以及常用知识点总结]. 本次主要讨论以下控件: GridView:用于显示数据 ...

  10. 在DevExpress程序中使用GridView直接录入数据的时候,增加列表选择的功能

    在我上篇随笔<在DevExpress程序中使用Winform分页控件直接录入数据并保存>中介绍了在GridView以及在其封装的分页控件上做数据的直接录入的处理,介绍情况下数据的保存和校验 ...

随机推荐

  1. PKUWC2019滚粗记

    真的不想说些什么了,还是自己太菜了,水平低啊.深深感受到NOIP2017以后的那种绝望,这最好的签约清北的机会,就这样白白错过了.本以为自己的应该有NOIAg的实力,运气好是前120吧,没想到自己还是 ...

  2. Spring3 (事务管理)

    简介: 1.事务管理.2.整合Junit.3.整和Web 1       事务管理 1.1   回顾事务 l  事务:一组业务操作ABCD,要么全部成功,要么全部不成功. l  特性:ACID 原子性 ...

  3. Day14--Python--函数二,lambda,sorted,filter,map,递归,二分法

    今日主要内容:1. lambda 匿名函数 lambda 参数: 返回值-------------------------------------def square(x): return x**2 ...

  4. (栈 注意格式)P1739 表达式括号匹配 洛谷

    题目描述 假设一个表达式有英文字母(小写).运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结束符.请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”:否则返 ...

  5. 简单贪心) Repair the Wall hdu2124

    Repair the Wall http://acm.hdu.edu.cn/showproblem.php?pid=2124 Time Limit: 5000/1000 MS (Java/Others ...

  6. tcping 与 telnet命令粗略使用

        使用tcping命令,在网上下载tcping文件,放入c盘的system32目录下,即可使用 使用tcping命令用来ping某个端口,能通的话,说明从外部到端口是没有问题的 使用telnet ...

  7. 利用开源审计插件对mysql进行审计

    转载于互联网 2017年06月02日MySQL社区版本最新版为MySQL_5.7.18,但是该版本不带AUDIT功能(MySQL Enterprise Edition自带AUDIT功能),因此需要加载 ...

  8. str

    print('字符串操作') s='abc DEF hij' print('首字母大写') print(s.capitalize()) print('全大写') print(s.upper()) pr ...

  9. django新建项目

    命令: django-admin startproject 项目名 pycharm创建: 1. File --> New project --> 左侧选Django --> 右侧填项 ...

  10. Java Web服务收到请求时线程的情况

    Web请求线程的状态 在开发中,突然想到了这样的一个问题, Java对每一次Web的请求,是否都会创建一条线程去进行处理呢?也就是说,当一个Class的方法同时有1000个请求访问时,线程是如何运作的 ...