Python 选择列表项
需要帮忙吗Python 选择列表项,python,list,slice,Python,List,Slice,需要帮忙吗 Example to select first 5 items from the below list nums = [10, 20, 30, 40, 50, 60, 70, 80, 90] nums[:5] output = [10, 20, 30, 40, 50] 如果我想我的输出如下。 预期产出=[10,20,60,70,90] 请让我知道如何做到这一点 我正在尝试这样的东西 nums[:1,5:6,8] nums[0,1,5,6,8]使用数组索引的一种方法可以使用numpy
Example to select first 5 items from the below list
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
nums[:5]
output = [10, 20, 30, 40, 50]
如果我想我的输出如下。
预期产出=[10,20,60,70,90]
请让我知道如何做到这一点
我正在尝试这样的东西
nums[:1,5:6,8]
nums[0,1,5,6,8]使用数组索引的一种方法可以使用numpy完成
>pip安装numpy
import numpy as np
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
nums_np = np.array(nums)
inds = np.array([0,1,5,6,8])
result = nums_np[inds]
print(results)
另一种方式:
result = np.r_[nums_np[:2], nums_np[5:7], nums_np[8]]
使用数组进行索引的一种方法是使用numpy
>pip安装numpy
import numpy as np
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
nums_np = np.array(nums)
inds = np.array([0,1,5,6,8])
result = nums_np[inds]
print(results)
另一种方式:
result = np.r_[nums_np[:2], nums_np[5:7], nums_np[8]]
您可以连接多个3个列表以实现此目的,其中一个由前3个元素组成,一个包含元素60、70,另一个包含最后一个元素,如下所示:
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(nums[:2] + nums[5:7] + nums[-1:])
# output [10,20,60,70,90]
您可以连接多个3个列表以实现此目的,其中一个由前3个元素组成,一个包含元素60、70,另一个包含最后一个元素,如下所示:
nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(nums[:2] + nums[5:7] + nums[-1:])
# output [10,20,60,70,90]
通用切片表示法不允许这种复杂的逻辑,您必须这样做:
nums[:2]+nums[5:7]+nums[8:][/code>重复的问题不是重复的。这个问题是不同的-它问的是多个切片,而这些切片在本文中没有提到dupe@PatrickArtner请删除此问题的重复标记,因为我检查了“理解切片表示法”问题,但没有提到+运算符。这只是基本的,没有帮助。Thanks@Jk185我还为concatating问题添加了dupe-您在slice语法方面遇到了问题(我正在尝试nums[:1,5:6,8]
),因此一开始会弹出一个。这里有另一个重复:通用slice表示法不允许如此复杂的逻辑,您必须执行:nums[:2]+nums[5:7]+nums[8://code>“重复“这个问题不是重复的。这个问题是不同的-它问的是多个切片,而这些切片在本文中没有提到dupe@PatrickArtner请删除此问题的重复标记,因为我检查了“理解切片表示法”问题,但没有提到+运算符。这只是基本的,没有帮助。Thanks@Jk185我还为concatating问题添加了dupe-您在slice语法方面遇到了问题(我正在尝试nums[:1,5:6,8]
)这是另一个重复:谢谢你的回答,两人都在为我工作,并且了解了一些新的东西谢谢你的回答,两人都在为我工作,并且了解了一些新的东西谢谢你的回答,我将使用你的答案,因为它与我的问题非常吻合。我不知道+运算符。谢谢你的回答。我将使用你的答案,因为它非常适合我的问题。我不知道+运算符。