2013-03-10 8 views
0
n = 1 
for n in range(3):   
    p = Poly(a[n+1][0:3]) 
    print p 
    n=n+1 

이것은 제 코드입니다. 기본적으로 3x3 행렬을 가지고 있고, 각 행을 다항식 함수에 할당 한 다음 각 다항식 함수를 새 배열에 할당하려고합니다. 그러나, 나는 poly 함수에서 원하는 배열로 실행될 때마다 p 값을 할당하는 방법을 모른다.파이썬 배열에 값을 할당하십시오.

일부 몸을 도와주세요.

는 P의 출력은 그것의 실행 P로 3 * 1 어레이를 구축 충분 것이다
  • (749.55*x**2) + (6.95*x**1) + (9.68*(10^-4)*x**0)
  • (1285*x**2) + (7.051*x**1) + (7.375*(10^-4)*x**0)
  • (1531*x**2) + (6.531*x**1) + (1.04*(10^-3)*x**0)

기본적

같다 실행될 산출. 이

[['A', 'B', 'C', 'PMIN', 'PMAX'], ['749.55', '6.95', '9.68*(10^-4)', '320', '800'], ['1285', '7.051', '7.375*(10^-4)', '300', '1200'], ['1531', '6.531', '1.04*(10^-3)', '275', '1100']] 
[['A' 'B' 'C' 'PMIN' 'PMAX'] 
+1

시작으로 [SO]! 질문을 편집하면 모든 코드를 선택하고 '{}}'버튼을 클릭하면 코드로 멋지게 형식이 지정됩니다. – askewchan

답변

0

이 시도처럼의 각종 정보에 대한

는 내 매트릭스 같습니다

p = [] 
for n in range(3): 
    p.append(Poly(a[n+1][0:3])) 
print p 

나는 당신의 Poly 기능 또는 a 배열에 액세스 할 수없는,하지만 우리는 그것을 테스트 할 수 있습니다 like :

p = [] 
for n in range(3): 
    p.append([n,n+1,n+2]) 
print p 
#output: 
#[[0, 1, 2], 
# [1, 2, 3], 
# [2, 3, 4]] 

n+1n=n+1 그 모두 다음을 수행하는 n in range(3)를 사용하여 자동으로 수행되기 때문에 :

for n in range(3): 
    print n 
#output: 
# 0 
# 1 
# 2 

(이 0에서 시작 2로 끝나는 있습니다, 이것은이 실행되도록 정확히 3 회)

+0

감사합니다. 그것은 내 문제를 해결 –

+0

, 내 문제를 해결합니다. 한 가지 더 질문 할 수 있을까요? 출력 내부의 값의 x는 x 항입니다. 출력에서 각 항의 x에 대한 출력을 어떻게 구별 할 수 있습니까? –

+0

현재의 질문과 다른 점은 새로운 질문을 게시하고 파생물을받는 방법을 묻는 것이 좋습니다. 해당 '폴리'기능에 대한 자세한 내용을 게시해야합니다. – askewchan

0
그런데
results = [] 
for x in range(3): 
    p = Poly(something) 
    results.append(p) # adding it to the list `results` 

however, i do not know how to assign the value of p each time executed from the poly function to the array I want.

, 파이썬, 더 해시처럼 어떤 배열, 단지 목록 (0 인덱스 컬렉션) 및 사전은 없다.

+0

'try : ImportError : CommentOnStackOverflow()' –

+0

을 제외한 배열 가져 오기 파이썬에서 배열에 대해 들었으므로이 문장으로 혼란 스러울 때'array'와'numpy'에 배열이 있습니다. – askewchan

1

목록 함축은 아주 간단하게이 문제를 설명합니다

def Poly(a): 
    return "{}x^2 + {}x + {}".format(a[0],a[1],a[2]) 
a = [['A', 'B', 'C', 'PMIN', 'PMAX'],[1,2,3,99,99],[4,5,6,42,42],[7,8,9,3.14,2.72]] 
result = [Poly(a[n]) for n in range(1,4)] 
print result 

출력은 다음과 같습니다

['1x^2 + 2x + 3', '4x^2 + 5x + 6', '7x^2 + 8x + 9'] 
관련 문제