2016-06-30 3 views
-1

저는 파이썬에 정말 익숙하지 않습니다. 이 코드를 실행하려고했지만 작동하지 않습니다. - '잘못된 구문'이 매번 발생합니다. 아무도 내가 잘못한 곳을 말해 줄 수 있습니까? 감사.숫자의 10 배 테이블을 인쇄하는 파이썬 코드

n=int(input('Enter a number to view it\'s 10 times tables:')) 
print(n, end=' ') 
print('x 1 =' n) 
print(n, end=' ') 
print('x 2 =' 2*n) 
print(n, end=' ') 
print('x 3 =' 3*n) 
print(n, end=' ') 
print('x 4 =' 4*n) 
print(n, end=' ') 
print('x 5 =' 5*n) 
print(n, end=' ') 
print('x 6 =' 6*n) 
print(n, end=' ') 
print('x 7 =' 7*n) 
print(n, end=' ') 
print('x 8 =' 8*n) 
print(n, end=' ') 
print('x 9 =' 9*n) 
print(n, end=' ') 
print('x 10 =' 10*n) 
+2

당신은 당신의 인쇄 문에 쉼표를 원한다. 'print ('x 9 ='9 * n)'는'print ('x 9 =', 9 * n)'이어야합니다. 또한 이것을 루프 처리하는 것이 훨씬 더 많은 프로그래밍이 될 것입니다. –

+4

방금 ​​가져온 모든 것을 게시하는 대신 한 줄로 쉽게 좁힐 수있었습니다. – khelwood

답변

1

각 인쇄문에 SyntaxError이 있습니다. print를 사용하면 여러 항목을 인쇄, 그래서 각 항목 사이에 쉼표를 추가 할 : 당신이 뭔가 N 번 수행 할 때

그러나
n=int(input('Enter a number to view it\'s 10 times tables:')) 
print(n, end=' ') 
print('x 1 =', n) 
print(n, end=' ') 
print('x 2 =', 2*n) 
print(n, end=' ') 
print('x 3 =', 3*n) 
print(n, end=' ') 
print('x 4 =', 4*n) 
print(n, end=' ') 
print('x 5 =', 5*n) 
print(n, end=' ') 
print('x 6 =', 6*n) 
print(n, end=' ') 
print('x 7 =', 7*n) 
print(n, end=' ') 
print('x 8 =', 8*n) 
print(n, end=' ') 
print('x 9 =', 9*n) 
print(n, end=' ') 
print('x 10 =', 10*n) 

는, 당신은 루프를 사용할 수 있습니다

n=int(input('Enter a number to view it\'s 10 times tables:')) 
for multiple in range(1, 11): 
    print(n, end = ' ') 
    print('x', multiple, '=', multiple * n) 

당신 또한 훨씬 좋네요이 작동 할 수 있도록 문자열 서식을 사용할 수 있습니다

n=int(input('Enter a number to view it\'s 10 times tables:')) 
for multiple in range(1, 11): 
    print('{a} x {b} = {result}'.format(a = n, b = multiple, result = n * multiple)) 
0

당신은 Python으로 string formatting에까지 확인해야합니다. print 구문 (또는 Python 3의 함수)은 형식이 올바르게 지정된 문자열을 인쇄합니다. 그러나 문자열의 형식이 올바르지 않으므로 인쇄 가능이 아니며 SyntaxError가 발생합니다.

당신은 수행해야합니다

print 'x 1 = %d'%n 

또는를 :

print('x 1 = {}'.format(n)) 
+0

'str.format'은 파이썬 2.x에서도 사용 가능합니다. –

+0

@RushyPanchal 네, 맞습니다. 주목 해 주셔서 감사합니다 –

+0

"올바른 형식"이란 무엇을 의미합니까? print 함수는 * 모든 * 객체를 나타낼 수 있습니다. 즉, 스트림에 직접 쓰는 것과 비교할 때 가리 킵니다. 문자열이라면'print'에 적합합니다. 구문이 시작 게시물 (''foo "2')에서와 같이 틀린다면 그것은 전혀 객체가 아닙니다. – MisterMiyagi

1

내가 이런 식으로 할 것 :

n = int(input("Enter a number to view it's 10 times tables:")) 
for x in range(11): 
    print("{} x {} = {}".format(n, x, n*x)) 
관련 문제