程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

One line of code in Python realizes the equal distribution of a list

編輯:Python

demand

Requirements describe : Will a list on length n Divide equally

for example :

  1. Input list by : list_data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  2. Average length n by : num=3
  3. Expected output :[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]

1. One line of code

[list_data[i*num:(i+1)*num] for i in range(int(len(list_data)/num) + 1) if list_data[i*num:(i+1)*num]]

2. Function implementation and the above

The code is as follows :

# demand
# Requirements describe : Will a list on length n Divide equally
#
# for example :
#
# Input list by :
list_data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# Average length n by :
num = 3
# Expected output :[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
# 1. One line of code
result = [list_data[i*num:(i+1)*num] for i in range(int(len(list_data)/num) + 1) if list_data[i*num:(i+1)*num]]
# 2. One line function version
def list_equally_split(list_data, num): return [list_data[i*num:(i+1)*num] for i in range(int(len(list_data)/num) + 1) if list_data[i*num:(i+1)*num]]

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved