题目

  1. 创建一个列表
    请创建一个名为fruits的列表,其中包含以下字符串:"apple", "banana", "cherry", "date", "elderberry"
  2. 基本切片
    fruits 列表中,如何通过使用切片得到 "banana", "cherry", "date"
  3. 步长切片
    fruits 列表中,如何通过使用步长为 2 的切片来得到 "apple", "cherry", "elderberry"
  4. 负索引切片
    fruits 列表中,如何使用负索引得到 "cherry", "date", "elderberry"
  5. 切片赋值
    请修改 fruits 列表,使得 banana 变成 kiwi,可以使用切片赋值。
  6. 复制列表
    如何使用切片来创建 fruits 列表的一个完整复制品?
  7. 翻转列表
    如何使用切片来反转 fruits 列表?
  8. 切片插入元素
    fruits 列表中,如何使用切片在 "cherry" 之后插入 "fig"
  9. 切片删除元素
    fruits 列表中,如何使用切片删除 "date"
  10. 清空列表
    如何使用切片清空 fruits 列表?

请注意,Python 的列表索引从0开始,切片的语法为 list[start:stop:step],其中start是切片开始位置的索引,stop是切片结束位置的索引(但不包含该位置),step是切片步长,即每次移动的元素数量。如果这些参数被省略,start默认为0,stop默认为列表长度,step默认为1。

答案

  1. 创建一个列表
fruits = ["apple", "banana", "cherry", "date", "elderberry"]
  1. 基本切片
fruits[1:4]  # 输出: ['banana', 'cherry', 'date']
  1. 步长切片
fruits[::2]  # 输出: ['apple', 'cherry', 'elderberry']
  1. 负索引切片
fruits[-3:]  # 输出: ['cherry', 'date', 'elderberry']
  1. 切片赋值
fruits[1:2] = ["kiwi"]  # fruits现在为: ['apple', 'kiwi', 'cherry', 'date', 'elderberry']
  1. 复制列表
fruits_copy = fruits[:]  # fruits_copy为fruits的一个完整复制品
  1. 翻转列表
fruits[::-1]  # 输出: ['elderberry', 'date', 'cherry', 'kiwi', 'apple']
  1. 切片插入元素
fruits[3:3] = ["fig"]  # fruits现在为: ['apple', 'kiwi', 'cherry', 'fig', 'date', 'elderberry']
  1. 切片删除元素
fruits[4:5] = []  # fruits现在为: ['apple', 'kiwi', 'cherry', 'fig', 'elderberry']
  1. 清空列表
fruits[:] = []  # fruits现在为空列表

注意,Python 的列表切片赋值可以改变列表的长度,也可以改变列表的内容。并且使用切片来复制列表会创建一个新的列表,修改新列表不会影响原列表。在Python中,负索引从列表的末尾开始计数,例如,-1表示最后一个元素,-2表示倒数第二个元素,以此类推。