2014-02-10 10 views
2

다음을 수행하는 프로그램을 만들어야합니다.한 줄에 여러 값 표시하기

"프로그램에서 실험실에서와 동일한 입력 값을 묻는 메시지가 표시되지만 사용자가 각 행에 하나의 값을 입력하는 대신 하나의 행에 여러 값이 필요합니다. 이어지는 각 항목은 한 행에 해당합니다 입력 : 0.19 (T1 + T2)을 "

T1 = input('Test One Score(0-100): ') 
T2 = input('Test Two Score(0-100): ') 
F1 = input('Final Test Score(0-100): ') 
HW = input('Homework Score(0-100): ') 
IC = input('Quiz Score(0-100): ') 
LAB = input('Lab Score(0-100): ') 
BP = input('Bonus Points(0-3): ') 

print('Overall Score: ',((float(T1)+float(T2))*.19) + (float(F1) * 0.22) + (float(HW) * 0.18) + (float(IC) * 0.08) + (float(LAB) * 0.14)+(float(BP))) 

print("Overall Score Without BP's: ",((float(T1)+float(T2))*.19) + (float(F1) * 0.22) + (float(HW) * 0.18) + (float(IC) * 0.08) + (float(LAB) * 0.14)) 

화학식 사용되는"+ 0.22t3 + 0.18hw + 0.08quiz + 0.14lab "

이 처음 수행하지만 돈 하였다 무엇 ' 모든 입력이 오직 하나의 입력으로 촉발되도록 그것을 만드는 법을 안다.

+2

* 힌트 * : "문자열 분할"하는 방법을 알고 있습니까? –

+0

http://stackoverflow.com/help/on-topiC# 4가 관심의 대상이 될 수 있습니다. – pnuts

답변

0
all = input("Please input your scores from T1,T2 etc Please separate each value by a space: ") 
T1, T2, etc = all.split() 
0

물론 str.split 메서드를 사용하여 목록의 문자열을 분할 할 수 있습니다. 즉.

내가 과제를 읽을 수 있지만 방법과 같은
a = input('Answer, separate by comma') 

# User fills in 42,60,1 
a = a.split(',') 

# Not required, but probably safer 
a = [ a.strip() for a in a.split(',') ] 

또한 커서를 이동하는 이스케이프 문자를 사용할 수 있습니다,이 아니다 정확히 과제는 7 질문에, 모든과가 주어진 거의 의미를 만드는 IMHO 다른 제약. 나는 사용자 친화적 인, 아마 당신이 시도 할 무언가이다 (당신은 물론, 두 솔루션을 결합 할 수 있습니다) int 또는 float로 전환 또한

b = input('Question 1: ') 

# Move cursor up 
print('\x1b[1A', end='') 

# Clear line, note this can be combined in 1 print() 
print('\x1b[2K', end='') 

c = input('Question 2: ') 

/캐치 및 도면 A이 더 고려할 것 친절한 경고 :

>>> int('42') 
42 
>>> int('a42') 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ValueError: invalid literal for int() with base 10: 'a42' 

참고 :이 대답은, 파이썬 3 사용 당신은 또한 파이썬이 약간 다른 대답을 가지고 파이썬 3를 사용하고 나타납니다.

0
questions = '''Test One Score(0-100): 
Test Two Score(0-100): 
Final Test Score(0-100): 
Homework Score(0-100): 
Quiz Score(0-100): 
Lab Score(0-100): 
Bonus Points(0-3):''' 


T1, T2, F1, HW, IC, LAB, BP = map(input, questions.split('\n')) 
관련 문제