Python打印语法错误树莓派

标签 python python-2.7 raspberry-pi raspbian gpio

我正在用运动传感器设置我的树莓派。我正在使用来自 modmypie 的一些简单代码 python 代码。我从终端窗口运行代码,但收到 SyntaxError: invalid syntaxprint(“检测到运动!”) 上。这么简单的一行,却搞不清楚问题出在哪里。

# 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()

最佳答案

这可能是因为您使用的是引号。

查看代码,您似乎使用了 unicode 引号。具体来说,您使用的是 unicode 字符 0x201C 和 0x201D——“左双引号”和“右双引号”。

“  ”

相反,您应该使用普通的 ASCII 引号,它具有 0x22 的 ASCII/Unicode 代码:

"  "

您是如何编写代码的?如果您使用某种文字处理软件(Microsoft Word、Libreoffice)编写代码,它们通常会将正则引号自动更正为花哨的 unicode 引号。许多网站和博客平台也会做同样的事情,因为常规引用是更好的排版并且通常是作者想要的(只要他们不是程序员!)

如果您使用常规的文本编辑器(记事本、Sublime Text 等),您应该不会遇到这个问题。


或者,您可能会混淆 Python 2 和 Python 3。

如果您运行的是 Python 2,您的打印语句应该如下所示:

print "Text"

如果您运行的是 Python 3,您的打印语句应该如下所示:

print("Text")

您可以通过从命令行运行 python --version 来检查您的版本。

关于Python打印语法错误树莓派,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25713602/

相关文章:

python - 嵌套循环未获得所需的输出

python - 在python中对数组列表进行分类

installation - pip 安装到本地文件夹

python - 空 numpy 数组 bool 矛盾

python - Raspberry Pi OpenCV : src is not a numpy array, 既不是标量

python - 如何卡住仅在虚拟环境中安装的软件包?

python - 如何在 Pandas 中将多种日期格式转换为一种格式

python - 正则表达式满足几个条件

linux - nfc标签ACR1251U在树莓派上的使用

python - 如何同时检查串行输入和键盘输入(同时使用readchar和串行库)