列表和元组

通用序列操作

1.索引:序列中所有的元素都是有编号的---从0开始逐渐递增,使用负数索引,python会从右边,也就是最后一个元素开始索引,最后一个元素的编号为-1

list = ['a','d','e','y']
print(list[0])
print(list[-1])

2.切片:

ist = ['a','d','e','y']
print(list[0:3]) #取前三个元素
print(list[-3:]) #取后三个数
list2 = [1,2,3,4,5,6,7,8,9,10]
print(list2[::2]) #取出1-10中的偶数,2指的是步长,步长是可以为负数的(必须让开始点的元素大于结束点)

3. 序列的相加:只有相同类型的序列才能够相加(如:列表与字符串就不能够连接在一起)

>>>[1,2,3] + [4,5,6]
[1, 2, 3, 4, 5, 6]
>>>'hello' + 'world'
'helloworld'
>>>[1,2,3] + 'hello'
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: can only concatenate list (not "str") to list

4.序列相乘:

>>>'python'*5
'pythonpythonpythonpythonpython'
>>>[42]*5
[42, 42, 42, 42, 42]

5. 长度,最小,最大值

>>>num = [1,10,100]
>>>len(num)
3
>>>min(num)
1
>>>max(num)
100

列表:列表时可以修改的

1.列表的创建:

  1.创建空列表:

  >>>list1 = []

  2. list()函数创建:

  >>>list('hello')
  ['h', 'e', 'l', 'l', 'o']

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

2. 改变列表:元素赋值(不能对一个位置不存在的元素赋值)

  >>>list = ['a','b','c']

  >>>list[0]=111

  >>>list   

  [111,'b','c']

3. 删除元素:

  >>>list = ['a','b','c']

  >>>del list[1]

  >>>list

  ['a','c']

4. 切片赋值:

  1. 一次为多个元素赋值

  >>>name = list('alxe')
  >>>name
  ['a', 'l', 'x', 'e']
  >>>name[2:] = list('wc')
  >>>name
  ['a', 'l', 'w', 'c']

  2. 在使用切片赋值时,可以使用与原序列不相等的序列进行切片替换

  >>>name = list('alxe')
  >>>name[1:] = list('python')
  >>>name
  ['a', 'p', 'y', 't', 'h', 'o', 'n']

  3. 使用切片插入新元素

  >>>num = [1,5]
  >>>num[1:1] = [2,3,4]
  >>>num
  [1, 2, 3, 4, 5]

  4. 使用切片删除列表元素

  >>>num = [1,2,3,4,5]
  >>>num[1:4] = []
  >>>num
  [1, 5]

  以上列子等同于:del num[1:4]

4. 列表的方法:

  1. .append() :在列表末尾追加新的对象

  >>>num = [1,2,3,4,5]
  >>>num.append(10)
  >>>num
  [1, 2, 3, 4, 5, 10]

  2. .count():统计某个元素在列表中出现的次数

  >>>num = [1,2,3,4,5,1,1,2,1,3,1,1]
  >>>num.count(1)
  6

  3. .extend():在列表的后面一次性追加多个值

  >>>num1= [1,2,3,]
  >>>num2= [4,5,6]
  >>>num1.extend(num2)
  >>>num1
  [1, 2, 3, 4, 5, 6]

  4. .index():用于从列表中找出某个值第一次出现的位置

  >>>lis = ['who','you','who','is']
  >>>lis.index('who')
  0

  5. .insert() :将对象查到列表中

  >>>lis = ['who','you','who','is']
  >>>lis.insert(2,'name')
  >>>lis
  ['who', 'you', 'name', 'who', 'is']

  6. .pop() :删除列表中的元素(默认最后一个),  并将该元素返回

  >>>lis = ['who','you','who','is']
  >>>lis.pop()
  'is'
  >>>lis
  ['who', 'you', 'who']
  >>>lis.pop(1)
  'you'
  >>>lis
  ['who', 'who']

  7. remove() :删除列表中某个值的第一个匹配项

  >>>lis = ['who','you','who','is']
  >>>lis.remove('who')
  >>>lis
  ['you', 'who', 'is']

  8. .reverse():将列表中的元素反向存放

  >>>lis = [1,2,3,4,5]
  >>>lis.reverse()
  >>>lis
  [5, 4, 3, 2, 1]

  9. .sort():对列表进行排序,无返回值(原序列发生改变)

  10. .sorted():对列表进行排序,返回一个排列后的列表副本,原列表无改变

  >>>lis = [2,4,6,1,0,7,9,3]
  >>>lis.sort()
  >>>lis
  [0, 1, 2, 3, 4, 6, 7, 9]

 

  >>>x = [2,4,6,1,0,7,9,3]
  >>>y = x[:]  # 列表的复制
  >>>y.sort()
  >>>x
  [2, 4, 6, 1, 0, 7, 9, 3]
  >>>y
  [0, 1, 2, 3, 4, 6, 7, 9]

 元组元组和字符串一样不可以修改

1. 元组的创建

  1. 空元组: a = ()

  2. 包含一个值得元组: a = (11,)  # 一定要有逗号

  >>>3*(40+2)

  126

  >>>3*(40+2,)

  (42,42,42)

  3. tuple():函数

  >>>print(tuple([1,2,3]))

  (1,2,3)

 

 

 

 

 

 

 

 

 

  

转载于:https://www.cnblogs.com/houdun/p/7104011.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值