如何\ n在列表中的某些位置

时间:2019-10-04 02:46:37

标签: python python-3.x list split

尝试在生成的列表的不同点打开新行。

ive试图使用它来分隔列表,但它不起作用。

for j in range (num,0,-1):
    for i in range(0,len(num),j):
        blist[i:j]
        print(blist)

这是我的代码

num=int(input('Size: '))
list=[]
blist=[]

for k in range(num,-1,-1):
    for i in range(0,num,1):
        list.append(i)
    num-=1
print(list)

for j in range (num,0,-1):
    for i in range(0,len(num),j):
        blist[i:j]
        print(blist)

这是预期的结果

Size: 8
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6
0 1 2 3 4 5
0 1 2 3 4
0 1 2 3
0 1 2
0 1
0

Size: 3
0 1 2
0 1
0

3 个答案:

答案 0 :(得分:2)

这有效:

n = int(input('Size: '))
L = [str(i) for i in range(n)]
for i in range(n):
    print(' '.join(L[:n-i]))

逐行说明:

  1. L = [str(i) for i in range(n)]创建从 0 n-1
  2. 的字符串数字列表
  3. for i in range(n): i 设置为从 0 n-1
  4. L[:n-i]将列表L从开始切成n-i(不包括在内)
  5. ' '.join(L[:n-i])只需粘合所产生切片的所有元素,并带有空白' '

答案 1 :(得分:0)

怎么样?

num=int(input('Size: '))
list_=[]

for k in range(num,-1,-1):
    list_.append([str(i) for i in range(0,num,1)])
    num -= 1

result = '\n'.join([' '.join(l) for l in list_])
print(result)

result接受list_中的每个列表,并用空格将它们连接起来,然后下一个联接用换行符将它们隔开。

答案 2 :(得分:0)

下面的代码可以为我工作。

num=int(input('Size: '))
list_data = list(range(num))

for i in reversed(range(1, num +1 )):
    print( list_data[0:i])