1,list(增删改查):列表可以装大量数据,不限制数据的类型(int,str,bool, list,tuple,dict,set),表示方法用[  ],list和sttr有区别,list可以直接在原对象上直接进行操作.

  • 表示:list = ["王美丽","张漂亮","李耐看",58,True,["高兴","快乐","兴奋"]("王昭君","西施","雪雪"),"dict","set"]方括号每一项用","(逗号)隔开,列表和字符串一样,也有索引和切片.
  • 索引:起始下角标 是"0"(表示从左到右),(-1)表示从右到左.比如:s = "asadf"    print(s[2])   结果是:a.  # 索引出来的是某一位置的元素,用索引能精确找出某一位置的元素.

    lst = ["0",2,"alex",$]   print(lst[2])

  • 切片:用下角标(索引标出来的位置)截取部分字符串的内容(输出的是截取下来的内容)
lst = ["麻花藤", "王健林", "马云", "周鸿祎", "向华强"]
print(lst[:3]) # ['麻花藤', '王健林', '马云'],:前边什么都不加默认从头开始切
print(lst[0:3]) # ['麻花藤', '王健林', '马云'],:前边加上0表示也是从头开始切

2,list常用的几种功能:

  • 1>列表的增加,格式是:   .append()
lst = ["麻花藤", "马云", "刘华强", "任我行"]
lst.append("高天一")
print(lst) # ['麻花藤', '马云', '刘华强', '任我行', '高天一'].append添加的时候,默认添加到最后的位置
  • 2>列表的删除,格式是:   .pop()    默认在lst后边删除元素  括号没有值默认删除最后一个元素 ,remove()指定元素删除,del 切片删除, clear()清空
lst = ["麻花藤", "马云", "刘华强", "任我行"]
lst.pop(2) # 删除索引是2的列表元素
print(lst) # ['麻花藤', '马云', '任我行']
lst.pop() # 默认删除的是最后一个元素
print(lst) # ['麻花藤', '马云']
lst.remove("麻花藤") # 删除指定元素,且是单一元素
print(lst) # ['马云']
lst1 = ["盖伦", "大白梨", "提莫", "大白菜"]
del lst1[1:2] # 切片删除,先索引出元素位置,再去删除
print(lst1) # ['盖伦', '提莫', '大白菜']
lst1.clear() # 清空,把lst1中的所有元素清空
print(lst1) # []
  • 3>列表的修改:先去索引,切片修改,索引出lst的元素,然后进行修改和切片(索引, 修改是某一lst含有元素的修改,切片, 是修改某一段含有元素的修改.)
lst = ["太白", "日天", "wusir", "sylar"]
lst[0] = "太黑" # 将列表中的第一项改成太黑
print(lst) # ['太黑', '日天', 'wusir', 'sylar']
lst[1:4:2] = "太亮" # 把太黑迭代到切片的元素,再打印出lst
print(lst) # ['太黑', '太', 'wusir', '亮']
lst[1:3:2] = ["太帅"] # 是把切片出来的元素修改为太帅
print(lst) # ['太白', '太帅', 'wusir', 'sylar']
lst[1:4:2] = ["太亮","太帅"] # 从左向右一次替换元素
print(lst) # ['太白', '太亮', 'wusir', '太帅']
lst[1:4:2] = ["太亮"] # 报错
# 当切片出多个元素的时候,就迭代修改,如果是单一元素,就单一的修改元素
# 当 切片出的元素与赋值的列表元素想对应,不然就会报错
  • 4>列表的查询:   列表是可迭代对象,所以可以用"for"循环来查询,       也可以直接来查询.
lst = ["太白", "日天", "wusir", "sylar"]
s = lst[0] # 太白 第一个元素
print(s)
for el in lst:
print(el) # for循环的原理的根据索引取每一个可迭代对象的元素
  • 3,lst的其他操作:

    • 1>   .len()表示计算lst的长度
lst = ["太白", "日天", "wusir", "sylar"]
l = len(lst) # 计算列表lst的长度
print(l) #
    • 2>   .count(" ").....是指lst中的某一元素在列表中出现的次数.
lst = ["太白", "日天", "wusir", "sylar"]
c = lst.count("太白") # 对列表中的"太白"元素进行计数
print(c)
    • 3> .sort()是指给lst中的元素进行排序.reserve()反转
lst = ["太白", "日天", "wusir", "sylar"]
lst.sort() # sort()是列表的一个内置方法,改变的是愿列表的长度
print(lst) # ['sylar', 'wusir', '太白', '日天']
lst.reverse() # reserve()是列表的一个内置方法,改变的是列表的长度
print(lst) # ['日天', '太白', 'wusir', 'sylar']
    • 4  lst的嵌套,即列表套列表.

    列如:lst = [1, "太白", "wusir", ["马虎疼", ["可口可乐"], "王剑林"]]

      • 1>增:lst.append("大保健"),在lst的末尾增加一个元素"大保健"

      print(lst),此时打印的结果是:[1, "太白", "wusir", ["马虎疼", ["可口可乐"], "王剑林"],"大保健"]

      • 2>删:lst.pop("可口可乐"),把lst中的"可口可乐"元素删掉

      print(lst),此时打印的是:[1, "太白", "wusir", ["马虎疼",  "王剑林"]]

    • 3>改:lst[3][1][0] = lst[3][1][0].replace("可口可乐","大保健"),把lst中的"可口可乐"换成"大保健"

      print(lst),此时打印的是:[1, "太白", "wusir", ["马虎疼", ["大保健"], "王剑林"]]

      • 4>查:lst = lst[3][1][0]   (s = lst[0:2]),查找可以用索引和切片来查找.

      print(lst/s),打印出来的结果分别是:"可口可乐"/[1,"太白"]

5  tuple元组:俗称不可变的列表,元组也是python的基本数据类型之一,用小括号括起来(    )里边可以放任何的数据,查询可以,循环可以,切片也可以,但就是不能修改.

tu = (1, "太白", "李白", "太黑", "怎么黑")
# 1,查:
print(tu[3]) # 拿到的是索引是3的元素 太黑
print(tu[0:3]) # 拿到的是所以在0-3之间的元素,但不包括索引是3的元素 (1, '太白', '李白')
# 2,可以遍历:for循环
for el in tu:
print(el) # 拿到的是每一个元素 tu1 = (1, "哈哈", [], "呵呵")
tu1[2].append("麻花藤") # 当元组中的元素是一个可变的数据类型加入一个元素也是可以的但,元组查的整体长度还是不变的
print(tu1) # (1, '哈哈', ['麻花藤'], '呵呵')
# 小结:元组中的元素是不可变的,但是子元素是可以改变的,这取决于元素是否为可变的数据类型

6  range可以帮我们获取到一些数据 ,通过for循环来获取这些数据.

# range可以帮我们获取到一些数据,通过for循环来获取这些数据
for num in range(10):
print(num) # 把1-9遍历出来 for num in range(1,10,2):
print(num) # 把1-9遍历出来每隔2个元素取一个元素 for num in range(-1,-10,-2):
print(num) # -10到-1切片,每2个元素取一个元素(-1.-3.-5.-7.-9) lst = ["雪雪", "小雪", "雪儿", "雪人", "小雪砸"]
for el in lst[0:2]:
print(el) # 按索引去第0,第1个元素(切片遍历)

列表和元组的基本操作,for遍历,range的更多相关文章

  1. 关于python列表和元组的基本操作

    一.列表 列表是python中最常出现的一种数据存储形式,掌握列表的基本操作可以快速而有效的提高我们的代码书写效率.列表中存放的数据有如下基本操作:如增.删.改.查,掌握了这四个操作,就基本掌握了列表 ...

  2. 【学习笔记】第四章 Python3核心技术与实践--列表与元组

    前面的课程,我们了解了Python 语言的学习方法,并且带你了解了 Python 必知的常用工具——Jupyter.接下来我们正式学习 Python 的具体知识. 对于每一门编程语言来说,数据结构都是 ...

  3. 无限遍历,Python实现在多维嵌套字典、列表、元组的JSON中获取数据

    背景 在做接口自动化的过程中,接口返回的数据是  列表字典循环嵌套  格式的,所以怎样通过一个key值,获取到被包裹了多层的目标数据成为了摆在我面前的一个问题. 一开始没想自己写,但是搜索后发现虽然很 ...

  4. python基础知识二 列表、元组、range

    3.6.2 列表 1.列表 -- list ​ 有序,可变,支持索引,用于存储数据(字符串,数字,bool,列表,字典,集合,元组,). list1 = [] list1 = ['alex',12,T ...

  5. python入门(三)列表、元组、range()、字典

    列表(list) 列表简介:列表(list)是处理一组有序项目的数据结构.用方括号[]表示.可以进行添加,删除,替换,搜索操作.是可变的数据类型.列表可以嵌套和支持索引. name=[12," ...

  6. python27期day04:列表、元组、range、作业题。

    1.for循环套for循环: for i in "abc": for x in "egf: print(x) 结果是:e g f e g f e g f  2.99乘法表 ...

  7. 列表、元组和range

    小知识点 s = " 5 " print(int(s)) print(s.replace(" ","")) 结果: 5 5 id()#获取对 ...

  8. 列表(索引切片 增删改查 嵌套) range 元组的初识

    li = ["alex", "WuSir", "ritian", "barry", "wenzhou" ...

  9. 第二天----列表、元组、字符串、算数运算、字典、while

    列表 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现. 基本操作: 索引切片追加删除长度切片循环包含 创建.查看列表: 列表中的数字不要加引号,列表的索引从0开始: lis ...

随机推荐

  1. Nginx 跨域

    if ($request_method = 'OPTIONS') { add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access- ...

  2. 关于java.io.FileNotFoundException: /static/count.txt (No such file or directory) 问题的解决

    这个是BUG网上有三种合理的解释: 1)这个文件在你的程序中可能涉及了读写操作,但是普通用户没有这个权限,所以加上权限就好 chmod count.txt 2)在Linux文件上下层目录是以斜杠 ' ...

  3. Uva 12325 Zombie's Treasure Chest (贪心,分类讨论)

    题意: 你有一个体积为N的箱子和两种数量无限的宝物.宝物1的体积为S1,价值为V1:宝物2的体积为S2,价值为V2.输入均为32位带符号的整数.你的任务是最多能装多少价值的宝物? 分析: 分类枚举, ...

  4. JSP默认选中下拉框的某一项

    注意<c:if>标签要写在<option>标签里面 <select id="salesInventory_${s.index}" style=&quo ...

  5. 29个非常流行的jQuery提示信息插件

    在网站的设计中,提示信息是非常细微的功能,但是起着非常重要的作用.如果你的网站中提示信息做的比较好,会给浏览者留下非常深刻的印象,同时也会起到非常好的网站宣传效果,下面介绍了30个比较流行提示信息插件 ...

  6. 把disable maven nature后的项目,恢复菜单呈现出来(Convert to Maven Project)

    把disable maven nature后的项目,恢复菜单呈现出来(Convert to Maven Project) 有的时候需求把disable maven nature后的项目,再转换为mav ...

  7. 亚瑟王(bzoj 4008)

    Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑. 他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂 亮.众所周知,亚瑟王是一 ...

  8. google play上获取apk文件

    先说一种测试不通过的方法(chrome浏览器添加Direct APK downloader拓展程序),浪费了我很多的时间,结果发现根本用不了,记录一下过程给大家参考. 使用chrome浏览器,点击左上 ...

  9. 通过分析system_call中断处理过程来深入理解系统调用

    通过分析system_call中断处理过程来深入理解系统调用 前言说明 本篇为网易云课堂Linux内核分析课程的第五周作业,上一次作业中我以2个系统调用(getpid, open)作为分析实例来分析系 ...

  10. 352. Data Stream as Disjoint Interval

    Given a data stream input of non-negative integers a1, a2, ..., an, ..., summarize the numbers seen ...