2013-10-06 38 views
-1

今天从字面上开始学习Python,我准备把我的头发从错误中解放出来,我不理解。Python错误混淆了Python noobie

下面是当我尝试运行该脚本,我得到的错误:

enter image description here

这里是有问题的脚本:

primes = [] 
x = raw_input('Enter the max value to check for primes: ') 

for num in range(2, x+1): 
    if len(primes) == 0: 
     primes.append(num) 
    else: 
     for prime in primes: 
      if (num % prime == 0): 
       break 
     primes.append(num) 

for number in primes: 
    print number 

从收到的错误,到目前为止,它看起来像我不能声明一个空白列表,它不喜欢我的输入法。我将这些代码复制到了他们工作的教程中,我很困惑他们为什么在那里工作,但不在这里。任何帮助表示赞赏。

+0

Python版本您使用的?上面的代码包含Python 2特定的东西。如果你使用Python 3来解释它 –

+2

把你的错误信息放入问题怎么样?上传错误文本的图片可能是您为什么被拒绝投票的原因。 –

+0

图像比输入更容易。我将为未来记住这一点。 –

回答

4

你开始发布以“找不到命令”,这意味着您没有运行该Python脚本在Python,但在外壳的错误消息。为了解决这个问题,无论是运行像python Question7.py,或添加#!/usr/bin/env python作为脚本的第一行(这就是所谓的shebang行,并告诉翻译,让Python的运行脚本,而不是)。

+0

这解决了它,谢谢你指出一个noobie的错误。 –

1

只有我面临的问题是

TypeError: cannot concatenate 'str' and 'int' objects 

修复此通过:

x = int(raw_input('Enter the max value to check for primes: ')) 
+0

我的python版本:Python 2.7.3 –

+0

所以你可能不知道IDLE或PyCharm的源代码编辑器窗口和Python Shell等REPL之间的区别。 –

+0

也有这个错误。 –