2013-11-26 95 views
0

我正在尝试编写一个使用Pascal三角形来执行FOIL二项式的程序。任何使用这种方法的二项式FOIL都将遵循一个基本模式。我已经知道该怎么做了,我只需要弄清楚如何将空格分隔的字符串分隔成多个由变量调用的整数。如何将空格分隔的字符串分隔为多个变量?

例如,我想借此输入:

pascalInput = raw_input("Type the full row of Pascal's triangle with numbers separated by space: ") 
#say the input is '1 3 3 1' 

,并把它放入变量:

pascalVal1 
pascalVal2 
pascalVal3 

我不知道我会怎么写我需要多少变量或其他什么。

pascalVals = raw_input('...').split() 

,然后访问他们像这样:

pascalVals[0] 
pascalVals[1] 
pascalVals[2] 

如果你想整数,而不是字符串,使用:

回答

2

,如果你存储在列表中你的价值观这样会更方便

pascalVals = [int(x) for x in raw_input('...').split()] 
+0

我将如何使用递归使用类似'高清未来(行): newrow = [row [k-1] + row [k] for k in range(1,len(row))] return [1] + newrow + [1] def pascal(rowsleft,oldrow): 如果rowsleft> 0: R =下一个(oldrow) 帕斯卡(rowsleft-1,R) list1的= [1] list121 = [1,2,1] 帕斯卡(3,[1,2,1] ) rowsleft = exponent' 我想要做的事情是拿一个方程“(x + 1)^ 3”为例,并将其贴在[(1x^3 + 1^0)+(3x^2 + 1^1)+(3x^1 + 1^2)+(3x^0 + 1^3)] –

+0

请为此打开一个新问题,以便您可以使用正确的代码格式。像这样,你的片段有点难以辨认。 – Hyperboreus

+0

[New question](http://stackoverflow.com/questions/20221695/use-recursion-to-foil-a-binomial) –

0
pascalVals = PascalInput.split(' ') 

pascalVa ls - 字符串列表。索引写

some_var = pascalVals[0] 

如果您需要的pascalVal1瓦尔:

for i in len(pascalVals): 
    exec('pascalVal' + str(i+1) + ' = pascalVals[' + str(i) + ']') 
0

使用地图功能

print map(int, raw_input("Type the full row of Pascal's triangle with numbers separated by space: ").split()) 
相关问题