2014-09-07 1 views
1

모션 센서로 라즈베리 파이를 설정 중입니다. modmypie에서 간단한 코드 파이썬 코드를 사용하고 있습니다. 터미널 창에서 코드를 실행하지만, SyntaxError: invalid syntaxprint (“Motion Detected!”)에 있습니다. 이것은 단순한 선이지만 문제가 무엇인지 파악할 수 없습니다.파이썬 인쇄 구문 오류 rasberry pi

# coding: utf-8  

import RPi.GPIO as GPIO 

import time 

GPIO.setmode(GPIO.BCM) 

PIR_PIN = 7 

GPIO.setup(PIR_PIN, GPIO.IN) 

def MOTION(PIR_PIN): 

    print “Motion Detected!” 

print “PIR Module Test (CTRL+C to exit)” 

time.sleep(2) 

print “Ready” 

try: 

    GPIO.add_event_detect(PIR_PIN, GPIO.RISING, callback=MOTION) 

    while 1: 

     time.sleep(100) 

except KeyboardInterrupt: 

    print “ Quit” 

    GPIO.cleanup() 
+0

기다려라. 예외는'print ("Motion Detected!")'에서 발생하지만 코드는'print "Motion Detected라고 말합니다." 귀하의 질문은 파이썬 2.7 태그가 있지만 내 RP는 파이썬 3에서 실행됩니다 ... 당신은 이것을 확인하고 필요한 경우 인터프리터를 전환 할 수 있습니다. – TidB

답변

5

아마도 사용중인 인용 부호 때문일 수 있습니다.

코드를 보면 유니 코드 인용 부호를 사용하고있는 것처럼 보입니다. 특히, 유니 코드 문자 0x201C 및 0x201D - "왼쪽 큰 따옴표"및 "오른쪽 이중 따옴표"를 사용하고 있습니다.

" " 

어떻게 코드를 작성 :

“ ” 

대신 0x22의 ASCII/유니 코드가있다, 이는 일반 ASCII 따옴표를 사용 하는가? 코드를 작성하기 위해 어떤 종류의 워드 프로세싱 소프트웨어 (Microsoft Word, Libreoffice)를 사용하고 있다면, 그들은 종종 유니 코드 유니 코드로 자동 인용 부호를 자동 수정합니다. 대부분의 웹 사이트와 블로깅 플랫폼도 똑같은 일을 할 것입니다. 보통 따옴표는 더 나은 타이포그래피이고 보통 저자가 원하는 것입니다 (프로그래머가 아닌 한)!

일반 텍스트 편집기 , Sublime Text 등),이 문제를 다루지 않아야합니다.

또는

, 당신은 아마도 파이썬이 파이썬 함께 혼동 될 수 있습니다 3.

파이썬 2를 실행하는 경우, 인쇄 문이 보일 것 같은 :

print "Text" 

당신이 만약 ' Python 3을 실행하면 print 문은 다음과 같아야합니다.

print("Text") 

명령 행에서 python --version을 실행하여 버전을 확인하십시오.

+0

그게 효과가! 웹 사이트에서 코드를 복사하여 붙여 넣었습니다. – user2242044

+0

와우, 나는이 해결책을 좋아한다 : D – TidB