首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python脚本中的无效语法

Python脚本中的无效语法
EN

Stack Overflow用户
提问于 2013-11-03 18:32:57
回答 2查看 3K关注 0票数 0
代码语言:javascript
复制
Python 2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

Imported NumPy 1.7.1, SciPy 0.12.0, Matplotlib 1.3.0 + guidata 1.6.1, guiqwt 2.3.1
Type "scientific" for more details.
>>> runfile('C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan/MM.py', wdir=r'C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan')
  File "<stdin>", line 1
    runfile('C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan/MM.py', wdir=r'C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan')
                                                            ^
SyntaxError: invalid syntax
>>> 

运行Windows7x64/,WinPython 275,Spyder2.7。这是使用spyder运行的。当运行python文件夹中的(MM.py)副本时,它可以工作。顺便说一下,这是点,点击我什么都不打字。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-03 18:36:01

使用"而不是'

代码语言:javascript
复制
runfile("C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan/MM.py", wdir=r"C:/Program Files (x86)/Firaxis Games/Sid Meier's Pirates!/ModMan")

堆栈溢出足以突出显示您的无效语法。

如果某个工具(spyder )执行这个无效的代码,就去找一个更好的工具。

票数 3
EN

Stack Overflow用户

发布于 2013-11-03 18:55:16

要真正解释这个问题:字符串可以在双引号"和单引号'中引用。只要字符串以相同的符号开头和结尾,您使用的这两个字符串中的哪一个没有区别。因此,"Hello"是与'Hello'相同的字符串。

一旦第二次出现引号字符,字符串就会结束。因此,在您的例子'Sid Meier's Pirates'中,字符串已经在Meier之后结束了,其馀部分不是字符串,而是解释器试图解释的普通Python代码(这通常会失败)。

因此,要在字符串本身中使用引号,需要对引号进行转义。因此,对于单引号字符串,可以使用\'和双引号字符串\"

因此,在您的情况下,您可以编写'Sid Meier\'s Pirates',它将是一个有效的字符串。

另一种选择是将引号字符转换为双引号。这样,您就不必转义字符串中的单引号(但是是双引号):"Sid Meier's Pirates"

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19756460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档