📌  相关文章
📜  国际空间研究组织 | ISRO CS 2017 – 5 月 |问题 59(1)

📅  最后修改于: 2023-12-03 14:50:48.149000             🧑  作者: Mango

ISRO CS 2017 - 5月 | 问题59

该问题是一道关于Python编程语言中列表的基础问题。

问题描述

定义了以下列表:

my_list = [3, 6, 9, 12, 15, 18, 21]

请编写一个Python函数,其输入为上述列表和两个整数start_index和end_index。函数应该返回该列表中位于${start_index}$和${end_index}$之间的元素,包括${start_index}$和${end_index}$。

输入格式
  • my_list - Python列表,其中包含至少3个元素的整数,按升序排列。
  • start_index - 需要提取的子列表的第一个元素的索引。
  • end_index - 需要提取的子列表的最后一个元素的索引。
输出格式

返回Python字列表示的子列表。

示例

输入:

my_list = [3, 6, 9, 12, 15, 18, 21]
start_index = 1
end_index = 3

输出:

[6, 9, 12]
代码实现
def extract_sublist(my_list, start_index, end_index):
    return my_list[start_index:end_index+1]

该函数可以提取给定列表中位于${start_index}$和${end_index}$之间的所有元素,包括${start_index}$和${end_index}$。

在这里,使用Python中的列表切片语法来获取子列表。

切片语法如下:

list[start_index:end_index+1]

其中,start_index是需要提取的子列表的第一个元素的索引,end_index+1是需要提取的子列表的最后一个元素的索引(其中加一是因为切片操作不包括end_index的元素)。

你可以使用以下代码来测试你的函数:

assert extract_sublist([3, 6, 9, 12, 15, 18, 21], 1, 3) == [6, 9, 12]
assert extract_sublist([3, 6, 9, 12, 15, 18, 21], 2, 5) == [9, 12, 15, 18]