Python–将列表转换为自定义重叠嵌套列表
原文:https://www . geesforgeks . org/python-convert-list-to-custom-重叠-嵌套-list/
给定一个列表,任务是编写一个 Python 程序,根据元素大小和重叠步长将其转换为自定义的重叠嵌套列表。
示例:
输入: test_list = [3,5,6,7,3,9,1,10],步长,大小= 2,4
输出: [[3,5,6,7],[6,7,3,9],[3,9,1,10],[1,10]]
说明:4 号切片的行,当前行 2 个元素后开始克服。
输入: test_list = [3,5,6,7,3,9,1,10],步长,大小= 2,3
输出: [[3,5,6],[6,7,3],[3,9,1],[1,10]]
说明:行被切成 3 号,当前行的 2 个元素后开始克服。
在这种情况下,行大小由切片操作管理,重叠步骤由 range()中提到的步骤管理,同时使用循环进行迭代。
Python 3
# Python3 code to demonstrate working of
# Convert List to custom overlapping Matrix
# Using list slicing + loop
# initializing list
test_list = [3, 5, 6, 7, 3, 9, 1, 10]
# printing original list
print("The original list is : " + str(test_list))
# initializing step, size
step, size = 2, 4
res = []
for idx in range(0, len(test_list), step):
# slicing list
res.append(test_list[idx: idx + size])
# printing result
print("The created Matrix : " + str(res))
输出:
最初的名单是:[3、5、6、7、3、9、1、10]
创建的矩阵:[[3,5,6,7],[6,7,3,9],[3,9,1,10],[1,10]]
方法二:使用 列表理解
在这种情况下,与上述方法类似的功能被用于具有使用列表理解的速记的变体。
Python 3
# Python3 code to demonstrate working of
# Convert List to custom overlapping Matrix
# Using list comprehension
# initializing list
test_list = [3, 5, 6, 7, 3, 9, 1, 10]
# printing original list
print("The original list is : " + str(test_list))
# initializing step, size
step, size = 2, 4
# list comprehension used as shorthand to solve problem
res = [test_list[idx: idx + size] for idx in range(0,
len(test_list),
step)]
# printing result
print("The created Matrix : " + str(res))
输出:
原来的名单是:[3,5,6,7,3,9,1,10]
创建的矩阵:[[3,5,6,7],[6,7,3,9],[3,9,1,10],[1,10]]
版权属于:月萌API www.moonapi.com,转载请注明出处