2013-12-09 3 views
-2

사용자가 입력 한 10 개의 값을 가진 배열의 값을 뺍니다. 지금까지 나는 그것을하는 방법을 찾을 수 없습니다. 이것은 내가 가지고있는 것입니다 ...파이썬 : 배열 내부 빼기

g = 0 
q = [] 

for s in range(9):  
    while g < 10: 
     n = input() 
     q.append(int(n)) 
     g = g+1 

add = sum(Q) 

sub = 

답변

0

이 작업을 수행하는 더 간결한 방법이 있습니다; 나는 가독성 대신 선택한했습니다 심지어 g``걱정`, 그들은 가지고 있지 않은 :

# get our initial input: 
n = input() 
result = int(n) 

# subtract the rest of the user's inputs: 
for x in range(9): 
    n = input() 
    result -= int(n) 

# ... do something with the result ... 
+0

내가하려는 것은 서로 다른 모든 값을 뺍니다 (예 : 1-2-3-4-5-6-7-8-9-0 – Javier

+0

) 내 대답 편집. –

+0

만약 내가 번식하거나 나누고 싶다면, 무엇을 바꾸어야합니까? 내 생각에 - =를 * =로 바꿀 것입니다. – Javier

0

개별 변수에 모두 할당 할 필요는 없습니다. 루프의 각 반복에서, 당신은 단지 배열에 새로 입력 값을 추가 할 수 :

q = [] 
g = 0 
while g < 10: 
    n = input() 
    q.append(int(n)) 
    g = g + 1 

을이 루프의 끝에서, q는 사용자가 입력 한 (10 개) 값을 포함합니다.

무엇이 무엇에서 뺄 필요가 있는지는 분명하지 않지만, 그것이 당신이 있어야 할 곳으로 조금 더 가까이 갈 수 있습니다.

+1

또는'xrange에 _ (10)는 파이썬 API를 사용 . – SethMMorton

+0

예, 그렇습니다. 이 경우에는 우리의 전투를 선택하는 것이 가장 좋습니다. –

+0

아, 청소 해 주셔서 감사합니다. 미안 해요, 그냥 프로그래밍을 시작하고 수업 과제를하려고합니다. 나는 배열에 넣은 모든 숫자를 뺄 필요가있다. 나는 그 (것)들을 전부 합계하기 위하여 합계하고 그 (것)들을 감산하거나 곱하거나 분할하는 방법을 모른다. – Javier

0
는 파이썬 수

a = [int(input()) for x in range(10)]

또는 파이썬 2.X

a = [int(raw_input()) for x in xrange(10)]

이 당신에게 10의 정수를 포함하는 목록을 제공하기위한

.

그럼 할 수 있습니다 사용자 입력의 합계를 차감 q = map(lambda x: x-sum(a), q),

+0

나는 파이썬에서 초보자이다 .... 나는이 q = map을 정확히 이해하지 못한다. (lambda ... 조금 설명 할 수 있겠는가 ..? – karthik27

+0

이것을 보라 .http : //docs.python.org/2 /library/functions.html#map –

0

그냥

li = [] 
for x in xrage(10): 
    li.append(input()) 
result = reduce(lambda x, y: x - y, li)