python之路-列表、元组、range

一 . 列表

# 列表的定义
列表就是能装对象的对象
在python中用[ ]来描述列表,内部元素用逗号隔开,对数据类型没有要求

 

  索引和切片

复制代码
lst = ["天龙八部", "西游记", "红楼梦", "银平煤", "绿平煤"]
print(lst[3])
print(lst[-3])
print(lst)
print(lst[1:4]) # 切片,原来是什么类型. 得到的就是什么类型
print(lst[-1::-2]) # 倒着切
复制代码

 

  相关的增删改查操作

     列表的添加 

 

复制代码
lst = ["凡人修仙传", "诛仙", "神墓"]
# 添加 append() 追加. 在后面添加
lst.append("看见")
lst.append("追风筝的人")

lst = ["凡人修仙传", "诛仙", "神墓"]
lst.insert(1, "琴帝")  # 添加到指定位置

lst = ["凡人修仙传", "诛仙", "神墓"]
lst.extend(["胡辣汤","猪蹄子", "猪头肉", "五花肉"])  # 迭代添加
复制代码

    列表的删除

复制代码
lst = ["斗破苍求", "手机", "爵迹", "满城尽带黄金甲", "三生三世十里桃花"]
pop() 默认从后往前删
lst.pop()
pop(索引) 按照索引位置删除
lst.pop(1)

lst = ["斗破苍求", "手机", "爵迹", "满城尽带黄金甲", "三生三世十里桃花"]
remove(元素)                  
lst.remove("满城尽带黄金甲")

lst = ["斗破苍求", "手机", "爵迹", "满城尽带黄金甲", "三生三世十里桃花"]
del lst[::2] 

lst = ["斗破苍求", "手机", "爵迹", "满城尽带黄金甲", "三生三世十里桃花"]
lst.clear() # 清空.
复制代码

    列表的修改

 lst = ["苏秦", "武大", "武二", "宝元", "李诞", "池子", "王建国"]
 lst[3] = "松江" # 通过索引修改  index out of range 索引下标越界
 print(lst)

 

    列表的查询

for i in 123:  # 'int' object is not iterable
    print(i)

for i in '123':  # 字符串可以
  print(i)  

 

二 . 元组

复制代码
tu = ("DNF", "LOL", "王者荣耀", "QQ飞车", "炫舞", {}, tuple(), [])
print(tu)
# tu[1] = "呵呵" # 元组是只读列表,不能增删改,只能看
print(tu)

元组也有索引和切片
print(tu[3:5])
print(tu[3:7:2])

元组有坑
空元祖
tu = tuple() # 固定写法
元组中如果只有一个元素
tu = (1) # 不是元组   <class 'int'>
tu = (1, ) # 这个是元组 <class 'tuple'>
print(type(tu))

好习惯: 写元组的时候末尾加个逗号

tu = ("锅包肉", "酸菜炖粉条+五花肉", "红烧鲤鱼", "红烧肉")
# 元组也是可迭代的
for item in tu: # 可以使用for循环
    print(item)
复制代码

 

三 . range

复制代码
# range(参数)  [0,参数)  range(5),就是0到4 
for i in range(20): 
    print(i)

# range(参数1, 参数2)  [参数1, 参数2) 切片
for i in range(10, 20):
    print(i)

# range(参数1, 参数2, 参数3)  [参数1, 参数2) 每隔 参数3个位置取一个
for i in range(10, 20, 3):
    print(i)

for i in range(20,10,-2):
    print(i)
# 步长如果为负数,那么start要比end大,好比数轴,步长为正数,从左往右找,为负数,从右往左找
lst = ["周杰伦", "动画城", "大风车", "随便加", "宝宝", "孟孟", "萌萌", "孟萌"]

for item in lst: # 只能拿到元素. 获取不到索引
    print(item)

for i in range(len(lst)): # i就是索引 lst[i]元素
    print(i, lst[i])
复制代码
posted @ 2019-04-08 20:00  截击机1  阅读(158)  评论(0编辑  收藏  举报