列表[ ]元组()range

1. 什么是列表
列表是一个可变的数据类型
列表由[]来表示, 每一项元素使用逗号隔开. 列表什么都能装. 能装对象的对象.
列表可以装大量的数据
2. 列表的索引和切片
列表和字符串一样. 也有索引和切片. 只不过切出来的内容是列表
索引的下标从0开始
[起始位置:结束位置:步长]

3. 列表的增删改查*
1. 增加
append() 追加
insert(index, 元素) 在index位置添加元素
extend() 迭代添加
2. 删除
pop(index) 按照位置删除元素
remove(元素) 直接删除元素
del 切片.
clear() 清空列表
3. 修改
索引修改
切片修改
4. 查询
for el in list:
el
5. 常用操作
1. sort() 排序 reverse=True降序
2. reverse() 翻转
3. len() 求长度
4. 列表的嵌套
降维. 一层一层看

5. 元组
只读列表. 只能看啥也不能干.
使用()表示元组
如果元祖中只有一个元素(元素, )
空元组: tuple()
元祖是一个可迭代对象, 可以使用for循环

6. range
range(n) -1
range(m,n) 从从0到nm到n-1
range(m,n,q) 从m到n-1 每q个取1
综上就是切片

7. 使用range和for循环来获取列表中的索引
for i in range(len(列表)):
i 索引
列表[i] 元素

 

 

# 1. 新增
# lst = []
# lst.append("周杰伦") # 追加 在最后添加, 效率比较高
# lst.append("周芷若")
# lst.append("周公瑾")
# print(lst)

# lst = ["刘德华", "渣渣辉", "古天乐", "陈小春"]
# lst.insert(2,"马德华")  # 插入, 可能会导致元素移动
# print(lst)

# lst = ["刘昊然", "张一山", "徐峥", "黄渤"]
# lst.extend(["刘能", "赵四", "广坤"])
# print(lst)


# 2. 删除 pop, remove, clear, del
# lst = ["刘能", "广坤", "皮长山", "大脚"]

# lst.pop(2) # 可以指定元素删除(索引)
# print(lst)
# s1 = lst.pop() # 默认弹出最后一个
# print(s1)
# s2 = lst.pop()
# print(s2)
# print(lst)

# lst.remove("广坤")
# lst.remove("大脚")
# print(lst)

# lst = ["语文", "数学", "地理", "历史", "英语", "化学"]

# lst.clear() # 清空

# 可以切片删除
# del lst[2]
# del lst[0]
# del lst[::2]
# print(lst)

# lst = ["功夫", "大话西游", "少林寺", "无间道", "战狼", "战狼2"]
# # lst[2] = "西西里的美丽传说"
# lst[-3] = "新世界"
# lst[1:3] = ["一步之遥"]
# lst[1:5:2] = ["胡辣汤", "烩面"] # 注意如果步长不是1. 那么元素的个数要匹配
# print(lst)

# 列表是一个可迭代对象. 可以使用for循环
# for el in lst:
#     print(el)

  

关于元组

#  元组就是不可变的列表, 元组使用()表示, 元素与元素之间使用逗号隔开, 数据类型没有限制, 只读列表
# 清朝皇帝 (努尔哈赤, 皇太极, 顺治, 康熙, 雍正, 乾隆)

# huang = ("努尔哈赤", "皇太极", "顺治", "康熙", "雍正", "乾隆", "嘉庆", "道光", "光绪", "咸丰")
# # huang[1] = "朱元璋" # 报错 'tuple' object does not support item assignment
# print(huang)

# 小括号在计算机里还表示算数优先级
# print((8+3)*7)

# tu = (1,) # 加了逗号, 就是元组了
# tu = ("哈哈","呵呵","嘿嘿",)
# print(type(tu))
# lst = list()  # []
# tu = tuple()  # 空元组

# 元组也有索引和切片 和列表一样和字符串也一样
# tu = ("iphone", "nokia", "砸核桃", "Lenovo", "HTC", "Honor")
# print(tu[-1])
# print(tu[1:3])
# print(tu[1:5:2])

# 不可变指的是第一层元素不可变, 第二层取决于你的数据类型
# tu = (1, 2, 5, ["胡辣汤", "滋滋冒油的大猪蹄子", "酱猪肘", "香喷喷的米饭", "脆皮炸鸡"])
# tu[3].append("锅包肉")
# print(tu)

# tu = ("孙悟空", "白骨精", "哪吒", "二师兄", "妲己")
#
# for el in tu:  # element 元素
#     print(el)

  

range

# range()
# for i in range(100):  # 0-9
#     print(i)

# for i in range(3, 8): # 从3-8 没有8
#     print(i)

# for i in range(5, 10, 2): # 从5 到 10 步长是2
#     print(i)

# range(边界) 从0到这个边界
# range(start, end) 从start到end结束. 不能到end
# range(start, end, step) 从start到end. 步长是step

# lst = ["张无忌", "张三丰", "张翠山", "张一山", "张磊", "张伟", "张角"]
# # for el in lst: # 这样循环. 没有索引
# #     print(el)
#
# for i in range(len(lst)):  # 有索引了
#     print(lst[i])

# tu = ("首页", "登录", "注册", "购物", "退出")
# for i in range(len(tu)):
#     print(i,tu[i])
posted @ 2019-10-17 17:25  forever_fortunate  阅读(144)  评论(0编辑  收藏  举报