2、Pyhton之列表操作

  • 创建
fruits = ['apple' , 'pear' , 'orange', 'peach']
  • 索引
print(fruits[0])
print(fruits[1])
# 负数表示倒数第几个(-1最后一个 -2 倒数第二个)
print(fruits[-1])
输出:
apple
pear
peach
  • 改、增、插、删
# 改
fruits[0] = 'cherry'
print(fruits)
输出:
['cherry', 'pear', 'orange', 'peach']

# 增(只能在列表的末尾)
fruits.append('cherry')
print(fruits)
输出:
['apple', 'pear', 'orange', 'peach', 'cherry']

# 插(指定位置插入)
fruits.insert(2,'cherry')
print(fruits)
输出:
['apple', 'pear', 'cherry', 'orange', 'peach']

# 删
1. 根据索引删除
del fruits[1]
print(fruits)
输出:
['apple', 'orange', 'peach']

2. 根据索引删除并获取值 
fruit = fruits.pop() 
print(fruit)
print(fruits)
输出:
peach
['apple', 'pear', 'orange']

fruit = fruits.pop(2)
print(fruit)
print(fruits)
输出:
orange
['apple', 'pear', 'peach']

3. 根据值删除
fruits.remove('orange')
print(fruits)
输出:
['apple', 'pear', 'peach']
  • 排序
# 正序
fruits.sort()
print(fruits)
输出:
['apple', 'orange', 'peach', 'pear']

# 倒序
fruits.sort(reverse = True)
print(fruits)
输出:
['pear', 'peach', 'orange', 'apple']

# 临时排序
print(sorted(fruits))
print(fruits)
输出
['apple', 'orange', 'peach', 'pear']
['apple', 'pear', 'orange', 'peach']

# 反转
fruits.reverse()
print(fruits)
输出:
['peach', 'orange', 'pear', 'apple']
  • 列表长度
print(len(fruits))
输出:
4
  • 遍历
for fruit in fruits :
    print('水果的名字:')
    print(fruit)
print('遍历完成')
输出:
水果的名字:
apple
水果的名字:
pear
水果的名字:
orange
水果的名字:
peach
遍历完成

注意点:
1.末尾加冒号。
2.for下面的代码,有缩进的都属于循环内。

  • 数值列表
# 创建默认步长的数值列表
numbers = list(range(1,8))
print(numbers)
输出:
[1, 2, 3, 4, 5, 6, 7]

# 创建指定步长的数值列表
numbers = list(range(1,8,2))
print(numbers)
[1, 3, 5, 7]

# 最小值、最大值、和
numbers = [2,1,3,9,0,4,2,5,7]
print(min(numbers))
print(max(numbers))
print(sum(numbers))
输出:
0
9
33
  • 列表截取
peoples = ['小明','小红','小李','老王','小徐','小习','小强']
print(peoples[:4])
print(peoples[1:4])
print(peoples[1:])
print(peoples[1:-2])
print(peoples[-2:])
输出:
['小明', '小红', '小李', '老王']
['小红', '小李', '老王']
['小红', '小李', '老王', '小徐', '小习', '小强']
['小红', '小李', '老王', '小徐']
['小习', '小强']
  • 列表复制
peoples = ['小明','小红','小李']
peoples1 = peoples
peoples2 = peoples[:]
peoples.pop(1)
print(peoples1)
print(peoples2)
输出:
['小明', '小李']
['小明', '小红', '小李']

peoples1 = peoples 与 peoples2 = peoples[:] 的区别:
= peoples 表示指向内存地址,peoples、peoples1的增删改操作的同步的,会相互影响的,= peoples[:] 表示的是复制列表值,相互操作是不影响的

  • 元组
# 定义
fruits = ('apple' , 'pear' , 'orange', 'peach')

元组与列表的区别:元组是不可修改的,所以列表的那些改、增、插、删、排序等方法元组是不可用的;其他索引、长度len()、遍历等方法是跟列表一样的。
特殊的注意点:合并的时候当其中有一个元组个数只有一个的时候,末尾一定要加逗号,否者编译会报错,列表则不需要。(只限元组个数为一个的情况)

fruits1 = ('apple' , 'pear' , 'orange', 'peach')
fruits2 = ('cherry',) # 逗号一定要加
print(fruits1)
print(fruits2)
fruits = fruits1 + fruits2
print(fruits)
输出:
('apple', 'pear', 'orange', 'peach', 'cherry')

fruits1 = ['apple' , 'pear' , 'orange', 'peach']
fruits2 = ['cherry'] # 逗号可加可不加
fruits = fruits1 + fruits2
print(fruits)

你可能感兴趣的:(2、Pyhton之列表操作)