在python中使用数字生成特定模式

2024-04-25 17:14:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在python中创建一个特定的模式,但无法获得相同的输出。这就是我想要的输出

1
1 3
1 3 5
1 3 5 7
1 3 5 7 9

我写的代码是

from __future__ import print_function
for i in range(1, 11, 1):
    print()
    for j in range(1 , i):
        print(j ,end ="")

我得到的输出模式是:

1
12
123
1234
12345
123456
1234567
12345678
123456789

为了获得正确的输出,我可以做哪些更改?你知道吗


Tags: 代码infromimportfor模式rangefunction
3条回答

似乎你只需要有一个步骤2和打印到目前为止,在每一步的数字。printend关键字参数控制它应该在…结尾打印什么。默认的换行符是正常的。默认的sep=' '也是您所需要的,因此您只需将收集的整数解包,以便在每次迭代时打印。你知道吗

from __future__ import print_function

xs = []
for i in xrange(1, 11, 2):
    xs.append(i)
    print(*xs)

我相信有一个更奇特的方法来处理这个问题,但这有一个理想的输出。你知道吗

您可以使用以下方法获得所需的输出:

number_list = []
# N is the number up to, but not including, which you want to print
for number in range(1, N, 2):
    number_list.append(number)
    print number_list

如果您关心格式,可以执行以下操作:

number_list = []
# N is the number up to, but not including, which you want to print
for number in range(1, N, 2):
    number_list.append(number)
    for element in number_list:
        print element,
    print

可以使用最后一个参数跨过范围。你知道吗

你可以试试for i in range(1, 11, 2):

相关问题 更多 >

    热门问题