【问题标题】:Printing Lists in python [closed]在python中打印列表[关闭]
【发布时间】:2012-04-09 17:40:02
【问题描述】:

我在尝试在 python 中打印列表时遇到问题。我想用以下代码打印出列表中的所有项目,特别是最后两行。

def primefind(n):
  mylist = []
  x = 3
  while (x < n/2):
    if ((n % x) == 0):
      mylist.append(x)
      x = x + 2
  for item in mylist:
    print item

运行此程序时出现语法错误。它在最后一行突出显示“项目”。据我所知,它在语法上是正确的,所以我很困惑!甚至这个网站也显示了与我使用的相同的语法 http://effbot.org/zone/python-list.htm#looping

任何想法我哪里出错了?

【问题讨论】:

  • 另外,我不知道这是否是一个错字,但看起来您需要将 x = x + 2 移出 if 块
  • 是的,这只是一个错字。不过很好。
  • Python 中的ifwhile 语句中的条件不需要括号。
  • @Daniel 我的旧 C 习惯显示出来了。我认为它在括号中读起来更清楚。但这可能只是因为我习惯了。
  • @user1322388:Python 有一个名为 PEP 8 的风格指南。大多数人都坚持这个风格指南,它的优点是大多数 Python 代码都使用熟悉的风格,增加了可读性。

标签: python list printing


【解决方案1】:

您正在使用带有 3.x 解释器的 Python 2.x 语法。 print 是 Python 3.x 中的一个函数,所以你应该使用

print(item)

改为。

【讨论】:

  • 非常感谢。我是 python 新手,所以我真的需要习惯不同版本之间的变化!
猜你喜欢
  • 2015-01-04
  • 1970-01-01
  • 2012-11-08
  • 1970-01-01
  • 2019-05-10
  • 2013-10-12
  • 2014-01-06
  • 2012-01-21
  • 1970-01-01
相关资源
最近更新 更多