2

这是我学习编程的第一天。我正在关注 Python Programming: An Introduction to Computer Science 2nd ed。由 John Zelle 撰写,到目前为止一切进展顺利。

唯一的麻烦是,当我尝试导入保存的程序时,我得到一个语法错误。我编写程序并在执行之前保存它,但是当我尝试导入它时,我得到了错误。我试着打开一个新的贝壳实例,但没有雪茄。我正在使用 OSX Lion 10.8 和 Python 2.7.3。任何帮助表示赞赏。这就是问题的样子:

>>> #File: chaos.py
>>> #A simple program illustrating chaotic behavior.
>>> def main():
    print "This program illustrates a chaotic function"
    x=input("Enter a number between 0 and 1: ")
    for i in range(10):
        x = 3.9 * x * (1-x)
        print x


>>> main()
This program illustrates a chaotic function
Enter a number between 0 and 1: .25
0.73125
0.76644140625
0.698135010439
0.82189581879
0.570894019197
0.955398748364
0.166186721954
0.540417912062
0.9686289303
0.118509010176
>>> import chaos

Traceback (most recent call last):
  File "<pyshell#47>", line 1, in <module>
    import chaos
  File "chaos.py", line 1
    Python 2.7.3 (v2.7.3:70274d53c1dd, Apr  9 2012, 20:52:43)
             ^
SyntaxError: invalid syntax
4

2 回答 2

1
  File "chaos.py", line 1
    Python 2.7.3 (v2.7.3:70274d53c1dd, Apr  9 2012, 20:52:43)
             ^
SyntaxError: invalid syntax

看起来你的chaos.py脚本的第一行有一行不是 python:

Python 2.7.3 (v2.7.3:70274d53c1dd, Apr  9 2012, 20:52:43)

#应该通过以符号开头的行来删除或注释掉它。


要记住的一些提示:

  • 在 Python 中,空格很重要——它们表示缩进级别。不要混合空格和制表符,以免 Python raise IndentationErrors。
  • 在文本或网页中,您可能会看到包含>>>...指示 Python 提示或缩进级别的交互式会话的记录。如果将代码传输到脚本,则必须删除它们。
于 2013-02-17T17:33:22.410 回答
1

我的猜测是您将终端的内容逐字复制到文件中。还有很多不应该存在的东西,包括版本提示

该文件应该是这样的:

#File: chaos.py
#A simple program illustrating chaotic behavior.
def main():
    print "This program illustrates a chaotic function"
    x=input("Enter a number between 0 and 1: ")
    for i in range(10):
        x = 3.9 * x * (1-x)
        print x

>>>,不...,没有制表符,当然不要复制版本信息:

Python 2.7.3 (default, Dec 22 2012, 21:27:36) 
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
于 2013-02-17T17:34:02.280 回答