2012-02-27 114 views
2

因此,我正在创建一个程序来生成帕斯卡的三角形,我知道这个三角形已经死亡,但是我被告知要去做的方式与我的想法不同。我只是需要一些帮助来翻译开头,这样我才能使它翻滚。它基本上是指定一个列表为空以表示三角形,并且对于从0到高度+ 1的三角形的每一行,分配一个列表为空以表示该三角形的一个新行。如果新行是行零使新的行成为[1]。翻译一些伪代码

所以我至今在这里我有麻烦

h=input("enter height") 
mytri=[] 
for i in range(0,h+1): 
    row=[ ] 
    if i==0: 
     newrow=[1] 
    elif newrow==1: 
    #here is where I get lost 

是找出如何判断新行是零行或列1.还没有看到这样的事情在我的短使用Python的经验。任何帮助是极大的赞赏。

+0

'if i == 0' does not work,or I miss this question? – inspectorG4dget 2012-02-27 05:41:02

+0

您可能想要使用'for'循环来创建大小为n,n + 1,n + 2 ... n + k的列表并将它们附加到您的主列表中。 – 2012-02-27 05:46:22

+0

在你的代码的最后一行,你只需要一个'else:' – 2012-02-27 06:40:14

回答

1

在您的第三行中,您正在运行for循环,因此那将是for而不是if

回到你的问题,你需要知道行号,并检查它是否是一些东西,对吗?仔细看,代码中的哪个变量对应于行号?

+0

我?对不起,这是我错了,而不是..我修正了它 – bardockyo 2012-02-27 06:00:45

+0

绝对正确。所以现在在'i'上运行'if'条件。 – 2012-02-27 06:01:53

+0

所以如果我== 0:但那么我会说如果我== 0然后新行= 1 newrow = [1]? – bardockyo 2012-02-27 06:04:45