2016-07-14 1 views
-1

누군가 파이썬이 이것을 허용하지 않는 이유를 말할 수 있습니까?파이썬에서 구문 오류가 발생하지만 실수가 없습니다.

# -*- coding: utf-8 -* 
import win32api,win32con,os,time,sys 
x_pad =464 
y_pad =235 

def tik(): 
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0) 
    time.sleep(.1) 
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0) 
    print "Click.".decode('utf-8').encode(sys.stdout.encoding)  #completely optional. But nice for debugging purposes. 
def basilitut(): 
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0) 
    time.sleep(.1) 
    print 'Hold'.decode('utf-8').encode(sys.stdout.encoding) 


def birak(): 
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0) 
    time.sleep(.1) 
    print 'Release.'.decode('utf-8').encode(sys.stdout.encoding) 

def mousePos(cord): 
    win32api.SetCursorPos((x_pad + cord[0], y_pad + cord[1]) 



def oyun(): 
    #Ses kes 
    mousePos((163, 251)) 
    tik() 
    time.sleep(.1) 
    #Play butonu 
    mousePos((161, 127)) 
    tik() 
    time.sleep(.1) 

    #Iphone 
    mousePos((149, 267)) 
    tik() 
    time.sleep(.1) 

    #Merhaba 
    mousePos((373, 314)) 
    tik() 
    time.sleep(.1) 

    #Goal 
    mousePos((163, 251)) 
    tik() 
    time.sleep(.1) 

File "C:\Users\Doruk\Desktop\Python\Bot\code.py", line 27

def oyun():

^

SyntaxError: invalid syntax

그리고 그 데프 oyun() 제거 할 때 : 그것은 단지 빈 줄을 사용하여 오류를 제공 blablabla

File "C:\Users\Doruk\Desktop\Python\Bot\code.py", line 24

              ^SyntaxError: invalid syntax 

합니다.

은 내가

def mousePos(cord): 
    win32api.SetCursorPos((x_pad + cord[0], y_pad + cord[1]) 

을 삭제하면 그것은 작동하지만 난 그들없이 내 프로그램을 만들 수 없습니다.

+0

구문 오류를 디버깅 할 때 종종 "이 foo (..." " – JETM

+0

앞에 오류가보고 될 것으로 예상되는 다른 것이 있습니다. – cdarke

답변

2

봐는 :

def mousePos(cord): 
    win32api.SetCursorPos((x_pad + cord[0], y_pad + cord[1]) 

당신은 닫는 괄호를 놓치고있어.

+0

와우, 미안하다. 그것의 정확한 위치. 나는 새로운 것을 배웠다. 고맙습니다. –

+0

이 오류는 괄호가 열려있을 때 파이썬이 다음 줄로 표현을 계속할 수있게한다는 사실 때문에 발생합니다. 따라서 파이썬은 여러분이 괄호를 닫지 않는다고 불평하지 않습니다; 그것은 완벽하게 유효하며 의도적으로 할 수도 있습니다. 괄호 안에 함수 정의를 넣으려고했는데 거기에 유효하지 않기 때문에 불평합니다. 그래서'def' 라인에 에러를줍니다. – kindall

2

구문 오류가 없는지 확인하십시오. 구문 오류가 어디

win32api.SetCursorPos((x_pad + cord[0], y_pad + cord[1]) 
        12        2 1??? 

구문 오류보고 된 라인은 불필요하다. 이전 구문 오류로 인해 구문 분석기가 무언가 잘못되었다는 사실을 알게 된 것은 처음 장소에 불과합니다. 즉시보고 된 오류 위의 코드에서

+0

와우 죄송합니다. 처음에는 구문 오류가 발생하는 것을 알지 못했습니다. 정확한 오류를 나타내는 유형 오류 등과 동일하다고 생각했습니다. –

+0

유형 오류는 일반적으로 매우 옳았습니다. 같은 줄,'int = string'과 같은 것을 할 때. 그러나 구두점이 빠진 것 같은데, 그 코드는 다음 줄에 올 수 있고 완전히 맞을 수 있기 때문에 반드시 오류가있는 것은 아닙니다. –

+0

이 멍청한 질문에 대해 유감스럽게 생각하는이 것에 :( –

관련 문제