如何给出for循环的条件?

时间:2017-09-13 09:24:59

标签: python-2.7 python-3.x

如何在for循环中给出条件。我想做

class trianglePro:
    n = int(input("Enter number : "))
    i = 1
    j = 1
    for i in range(1,n,1):
        for j in range(1,i,1):
            print (" j: ", j)
        print("")

以上陈述不起作用,为什么我不知道。我是python的新手。请给出建议。

 j:  1

 j:  1
 j:  2

 j:  1
 j:  2
 j:  3

现在的输出是:   输入数字:5

Enter the value for n:5
  1 
  1 2 
  1 2 3 
  1 2 3 4 
  1 2 3 4 5 

想要的输出是:

JSON.parse(response.body)

2 个答案:

答案 0 :(得分:1)

我愿意:

from __future__ import print_function

n = int(input("Enter number : "))
for i in range(n):
  for j in range(1,i+2):
    print (j,end=' ')
  print('')

输出:

Enter number : 5
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5

如果使用python 3

,请删除第一行

答案 1 :(得分:0)

范围说明

Python使用for循环语法:

for <pattern> in <iterable-expression>:
    # ...

因此,Python中的for循环是C / C ++ / Java / C#系列中的foreach循环(在Java中通常是for(Var var : iterable))。

range(..)是一个可迭代的构造函数。如果您构建range(0,5,2)对象,则会发出024。 Python中没有像 for(int i = 0; i < 5; i++) 这样的专用语法。

无新线打印

print语句会在结尾处自动添加新行。因此,如果您编写print(4),则将"4\n"写入输出通道。但是,您可以覆盖end的{​​{1}}参数以防止这种情况:您可以将print写入仅将print(4, end='')写入标准输出通道。因此,您可以将代码重写为:

"4"

请注意,您还应将n = int(input("Enter number : ")) for i in range(1,n+1,1): for j in range(1,i+1,1): print (j, end=' ') print('')放在print语句中,否则它也会将其打印到输出通道。例如:

" j: "

中,您最好通过以下方式从导入>>> n=5 >>> for i in range(1,n+1,1): ... for j in range(1,i+1,1): ... print (j, end=' ') ... print('') ... 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 函数:

print(..)

在文件的头部。