有一个列表list[1,2,3,4,5,6,7,8,9],请生成一个新的列表,其值为[8,5,2]
时间: 2024-09-20 13:12:45 浏览: 27
如果你想从给定的列表 [1, 2, 3, 4, 5, 6, 7, 8, 9] 中提取特定的值 [8, 5, 2],你可以创建一个新列表并手动添加这些元素。如果你需要的是按照某种条件筛选出来的值,比如它们可能是原列表中的偶数或者某个范围内的数字,那么你需要提供具体的筛选规则。
以下是直接按指定顺序生成新列表的例子:
```python
original_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
target_list = [8, 5, 2]
new_list = target_list.copy() # 创建一个新列表,避免修改原始列表
print(new_list)
```
如果你有其他的筛选需求,例如只取偶数,可以这样做:
```python
# 取出所有偶数
new_list = [num for num in original_list if num % 2 == 0][:3] # 截取前三个偶数
print(new_list)
```
或者,如果你想保留原始列表的顺序,但是不确定目标值在原始列表中的位置,可能需要查找:
```python
def find_and_extract(original_list, target_values):
new_list = []
for value in target_values:
index = original_list.index(value) # 查找值在原列表中的索引
if index != -1: # 如果找到了值,则添加到新列表
new_list.append(value)
# 移除已找到的值,防止后续多次插入
original_list.pop(index)
return new_list
target_values = [8, 5, 2]
print(find_and_extract(original_list, target_values))
```
请注意,在实际应用中,查找可能会因为数据量大而影响性能。上述代码假设了 `index` 能立即找到对应值,但在某些情况下(如列表中有大量重复元素),可能需要更复杂的解决方案。
阅读全文