编写一个函数,传入列表或元组,然后把奇数位索引和偶数为索引对应的元素分开,并将其作为新列表返回给调用者用python
时间: 2024-10-12 21:11:23 浏览: 56
在Python中,你可以创建一个名为`separate_even_odd`的函数,接受一个列表或元组作为参数,然后将奇数索引位置和偶数索引位置的元素分别放入两个新的列表中并返回。以下是具体的代码实现:
```python
def separate_even_odd(lst):
even_index_elements = [lst[i] for i in range(0, len(lst), 2)]
odd_index_elements = [lst[i] for i in range(1, len(lst), 2)]
return even_index_elements, odd_index_elements
# 示例:
input_list = [1, 2, 3, 4, 5, 6]
even, odd = separate_even_odd(input_list)
print(f"偶数索引元素:{even}")
print(f"奇数索引元素:{odd}")
# 相关问题:
1. 如果列表为空,这个函数会怎样处理?
2. 这个函数如何处理非整数类型的列表元素?
3. 如果需要同时返回原列表和新生成的两个列表,应该如何修改函数?
相关问题
.定义一个函数guess_func,函数功能为将传入一个列表或元组,判断奇数位的元素和是否大于15。(利用练习2的list_func)
可以这样定义一个名为`guess_func`的函数,它接受一个列表或元组作为输入,然后对其中的奇数位置元素求和,最后检查这个和是否大于15:
```python
def guess_func(lst_or_tuple):
# 首先判断输入的是列表还是元组
if isinstance(lst_or_tuple, tuple):
lst = list(lst_or_tuple)
else:
lst = lst_or_tuple
# 计算奇数索引处元素之和
sum_odd_indices = sum(lst[i] for i in range(1, len(lst), 2))
# 检查和是否大于15
result = sum_odd_indices > 15
return result
# 示例用法
input_list = [5, 7, 9, 11]
print(guess_func(input_list)) # 输出:True (因为5 + 9 + 11 = 25)
# 或者元组
input_tuple = (6, 8, 10, 12)
print(guess_func(input_tuple)) # 输出:False (因为所有元素都是偶数)
```
阅读全文