2019 年 7 月 9 日

列表———list------容器

**列表:存储数据,支持多个数据类型,比如 :字符串 数字 布尔值 列表 集合 元组 **

​ 特点 : 有序 可变 支持索引

(定义一个列表不要用list,一般使用 lst)

# lst = ["alex",123,True]    #用逗号分隔的是一个元素
# print(lst[0]) #索引
# print(id(lst[0]) #肉眼可见的是 0 这个位子的 alex ,其实真正的内存地址是一长串的数字
#id 获取的是对象的内存地址 #**可变说的是列表可变,但是字符串不可变**.
下面列举一下 #字符串
# s = "alex"
# s[0] = "b"
# print((s)) #'str' object does not support item assignment 直接报错 列表规则不能适用于字符串
#目前我的理解就是内存地址在字符串中是不可变的,但是对于字符串中 replace
# 来说只是拓展了新的内存空间,而不是在原有的基础上改变
#列表
# lst = ["alex",123,True]
# lst[0] = "dsb"
# print(lst) #['dsb', 123, True]

列表的增加

#lst.append()       #追加 在列表的最后位置添加一个内容
lst = ["alex",123,True]
lst.append("大煎饼")
print(lst) #['alex', 123, True, '大煎饼']
#lst.insert()       #插入   以后尽量不要使用   当数据比较大的时候会影响效率

lst = ["alex",123,True]
lst.insert(2,"大煎饼") #在 2 这个位置上添加"大煎饼"
print(lst) #['alex', 123, '大煎饼', True]
#lst.extend()     迭代添加      括号里的是可迭代的对象,不能放数字和布尔值    利用for 循环
lst = ["alex",123,True]
lst.extend("今天天气真好") #列表是将一个一个元素拆开,在列表中展示,只有从后面加入,在前面添加位置输出都不对
print(lst) #结果 ['alex', 123, True, '今', '天', '天', '气', '真', '好']

删除

lst.pop()      # 弹  默认删除最后一个
lst = ["alex",123,True]
lst.pop()
print(lst)
#lst.pop()      # 通过指定索引进行删除    超过范围会报错
lst = ["alex",123,True]
lst.pop(1)
print(lst)
# lst.remove()    #移除            通过元素名字进行删除    要有重名就删除第一个,只删除一个
lst = ["alex",123,True]
lst.remove(123)
print(lst) #['alex', True]
lst = ["alex",123,True]
del lst[0] # 删除第一个元素 通过索引删除
print(lst) #[123, True]
lst = ["alex",123,True]
del lst[0:2] #通过切片删除前两个
print(lst)
lst = ["alex",123,True,"大黑哥",789,7890]
del lst[0:3:2] #通过步长删除
print(lst) #[123, '大黑哥', 789, 7890]
#lst.clear()            清空
lst = ["alex",123,True,"大黑哥",789,7890]
lst.clear()
print(lst) # 输出 []

通过索引 切片 步长 修改

lst = ["alex",123,True,"大黑哥",789,7890]
lst[1] = "123" #通过索引修改
print(lst) #['alex', '123', True, '大黑哥', 789, 7890]
lst = ["alex",123,True,"大黑哥",789,7890]
lst[1:4] = "123" #通过切片修改 后面的不可以是数字和布尔值 因为这是利用了 for 循环
#lst[1:4] = "123456789" 元素可以超过切片的位数,不报错,强盗式插入,
['alex', '1', '2', '3', '4', '5', '6', '7', '8', '9', 789, 7890]
print(lst) #['alex', '1', '2', '3', 789, 7890]
lst = ["alex",123,True,"大黑哥",789,7890]  #通过步长修改
# lst[1:4:2] = "123" 这个报错 步长不为1 的时候必须用几个位置写几个位置 必须一一对应
lst[1:4:2] = "12" # ['alex', '1', True, '2', 789, 7890] 步长不为1 的时候必须用几个位置写几个位置
print(lst) #['alex', '1', '2', '3', 789, 7890]

lst = ["alex",123,True,"大黑哥",789,7890]
for i in lst:
print(i)
#
alex
123
True
大黑哥
789
7890

列表的嵌套

lst=[1,"alex","春生","小东北","渣弟",["大黑哥","冯强","海峰",["太白金星","女神","吴超",["肖锋"]]]]
lst[-1][-1][-2]

元组-----tuple

  1. 有序,不可变 ,支持索引
  2. 用于存储一些比较重要的信息
  3. 元组在配置文件中使用
  4. 元组就是不可变列表

除了不可变这就省去了列表中增删改哈哈 ,只剩下了查

#定义的方式
tu = (1,"alex","大黑哥",[123])
print(tu) #来一个对比 (1, 'alex', '大黑哥', [123]) lst = [1,"alex",True,"大黑哥",[1,2,3]]
print(lst) #[1, 'alex', True, '大黑哥', [1, 2, 3]]
#查

tu = (1,"alex","大黑哥",[123])
for i in tu:
print(i) #
1
alex
大黑哥
[123]

range———范围

Python3 中 range 是一个可迭代的对象,写的是怎样的打印的时候就是什么样

print(list(range (0,(10))))
#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Python2中获取的是一个列表,顾头不顾尾

print(range (0,10))
#[0,1,3,4,5,6,7,8,9]

其他性质

步长不写的时候默认为 1 步长也是有方向的

range(起始位置,终止位置,步长)

print(list(range(10,0,-1)))
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
# 使用 for 循环和 range 打印 100~1
for i in range(100,0,-1):
print(i)
#奇数
for i in range(1,101,2):
print(i)
#偶数
# for i in range(2,101,2):
# print(i)
#被 6 整除
for i in range(0, 101, 6):
print(i)

列表 元组 range的更多相关文章

  1. 巨蟒python全栈开发-第4天 列表&元组&range

    今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...

  2. python笔记(1)--序列(列表 元组 range)

    一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...

  3. day04 python列表 元组 range()

    day04 python   一.列表 1.什么是列表     列表是可变的数据类型: 和字符串不同, 做的操作直接改源数据     列表由[]来表示, 每项元素用逗号隔开.列表什么都能装,能装对象的 ...

  4. 列表,元组以及range

    列表,元组以及range 一.列表(list) 列表是数据类型之一,它有序,可变,支持索引 作用:存储数据,支持的数据类型很多:字符串,数字,布尔值,列表等 # 定义一个列表 lst = ['alex ...

  5. Python成长之路第二篇(2)_列表元组内置函数用法

    列表元组内置函数用法list 元组的用法和列表相似就不一一介绍了 1)def append(self, p_object):将值添加到列表的最后 # real signature unknown; r ...

  6. Python第三天 序列 数据类型 数值 字符串 列表 元组 字典

    Python第三天 序列  数据类型  数值  字符串  列表  元组  字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...

  7. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  8. Python摸爬滚打之day04----基本数据类型(列表,元组)

    1.列表 列表是可变的, 有序的数据类型,列表是按照添加顺序来保存的,可以存放各种数据类型. 1.1    列表的切片(同字符串) 1.2    列表的增删改查 注意: 列表是可以直接在列表上面进行操 ...

  9. python基础知识-04-字符串列表元组

    python其他知识目录 内存,cpu,硬盘,解释器 实时翻译 编译器 :一次性翻译python2,3 除法,2不能得小数,3能得小数 1.字符串操作 1.1字符串操作startswith start ...

随机推荐

  1. C#连接oracle 数据库查询时输入中文查询不出来,用plsql就可以

    查询语句为:select * from Per where khmc like '%李%',其实是字符集的问题. 解决方案:在连接字符串加一个“Unicode=True;”

  2. /\B(?=(?:\d{3})+$)/g 一条令人费解的正则表达式

    网上浏览博客看到要用JavaScript正则表达式解决一个功能, 要在数字中间插入逗号, 用来表示书面的金额写法. JS代码是这样子的 let test1 = '1234567890' let for ...

  3. C# 委托参数方法实例

    /// <summary> /// 方法委托 /// </summary> /// <param name="dwEnrollNum">< ...

  4. 使用dumpbin命令查看dll导出函数及重定向输出到文件(VS自带)

    以前查看dll导出函数,一般使用Viewdll等第三方工具.但由于Viewdll采用dephi编写,因此仅能查看32位的dll.其实微软已经帮我们提供一个查看dll导出函数的命令,嵌在VS开发环境中, ...

  5. 配置我的Ubuntu Server记(包括桌面及VNC,SSH,NTP,NFS服务) good

    跟老板申请买了一台配置相对较好的计算机回来做GPU计算,当然,不能独享,所以做成服务器让大家都来用. 这篇日志用来记录配置过程中遇到的一些问题,以方便下次不需要到处谷歌度娘. 安装Server版系统 ...

  6. python中的while循环,格式化输出,运算符,编码

    一.while循环 1.1语法 while 条件: 代码块(循环体) else: 当上面的条件为假的的时候,才会执行. 执行顺序:先判断条件是否为真,如果是真的,执行循环体,再次判断条件,直到条件不成 ...

  7. SpringCloud系列——TX-LCN分布式事务管理

    前言 SpringCloud分布式架构给我们带来开发上的便利,同时增加了我们对事务管理的难度,微服务的遍地开花,本地事务已经无法满足分布式的要求,由此分布式事务问题诞生. 分布式事务被称为世界性的难题 ...

  8. 《SpringMVC从入门到放肆》十五、SpringMVC之上传文件

    上一篇我们学习了数据分组校验,已经可以灵活的在项目中进行数据校验了,今天来学习SpringMVC的上传文件功能.相对来说SpringMVC的上传功能,还是比较简单的. 一.添加依赖 <depen ...

  9. python下SQLAlchemy的使用

    SQLAlchemy是python中orm常用的框架.支持各种主流的数据库,如SQLite.MySQL.Postgres.Oracle.MS-SQL.SQLServer 和 Firebird. 在安装 ...

  10. 【转】Mysql索引最左匹配原则理解

    作者:沈杰 链接:https://www.zhihu.com/question/36996520/answer/93256153来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...