簡體   English   中英

從帶有后綴的 Python 列表中創建子集

[英]Create subsets from Python list with suffix

我正在嘗試將 python 主列表分割為具有適當后綴的子列表。 例如,主列表看起來像

M = [1,2,3,4,5,6]

我想創建一個如下所示的子列表

M_1_3 = [1,2,3]
M_4_6 = [4,5,6]

這只是例如,因為我確實有一個包含一千個元素的列表。 我嘗試了下面的“For循環”但沒有用

for i in range(0,len(main_list),50):
    start = i
    end = i+50
    'sub_list_'+str(start)+'_'+str(end) = main_list[start:end]

Python 不鼓勵動態變量。 使用字典:

sub_lists = {}
for i in range(0,len(main_list),50):
    start = i
    end = i+50
    sub_lists[str(start)+'_'+str(end)] = main_list[start:end]

使用元組比從整數創建字符串更好:

sub_lists = {}
for i in range(0,len(main_list),50):
    start = i
    end = i+50
    sub_lists[(start, end)] = main_list[start:end]

您可以使用exec強制分配:

main_list = list(range(200))
for i in range(0,200,50):
    start = i
    end = i+50
    exec('sub_list_'+str(start)+'_'+str(end) +'= main_list[start:end]')

print(sub_list_0_50)

但是,這在 Python 中並不是一個好習慣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM