2017-10-15 89 views
0

當我運行我的程序,發現號的逆置換,它返回我與後續的錯誤:Python程序語法錯誤:`

python inverse_permutation.py 1 2 3 4 5 
    File "inverse_permutation.py", line 18 
    else: 
    ^
SyntaxError: invalid syntax 

此前提出這個問題,我試圖尋找類似的帖子,但無法找到解決我的具體問題。這裏是我的代碼:

import stdarray 
import stdio 
import sys 

q = input().split() 
for i in range(len(q)): 
    q[i] = int(q[i]) 
l = len(q) 
s = int((l*(l+1))/2-(l)) 
s2 = 0 
b = [0 for i in range(l)] 
for i in range(l): 
    s2 = s2+q[i] 
if(s == s2): 
    for i in range(l): 
     b[q[i]] = i 
print(b) 
else: 
    print('Not a permutation') 
+1

縮進打印(B) – Transhuman

+1

你忘了縮進'print'。 –

+1

VTC作爲錯字,因爲它顯然是OP意味着'print(b)'縮進。 –

回答

0

如果應遵循的人,但你已經把print語句if和else之間,你可以做這樣的事情

import stdarray 
import stdio 
import sys 

q = input().split() 
for i in range(len(q)): 
    q[i] = int(q[i]) 
l = len(q) 
s = int((l*(l+1))/2-(l)) 
s2 = 0 
b = [0 for i in range(l)] 
for i in range(l): 
    s2 = s2+q[i] 
if(s == s2): 
    for i in range(l): 
     b[q[i]] = i 
else: 
    print('Not a permutation') 

print(b)