【问题标题】:Google Foobar: Attribute Error when submitting solutionGoogle Foobar:提交解决方案时出现属性错误
【发布时间】:2016-06-14 06:39:44
【问题描述】:

我已经阅读该网站很多年了,今天是我的第一个问题。

我被邀请在 Google Foobar 中搜索 Python,因为我在完成教程后测试我的新知识。

当我提交“solution.py”时,我收到以下错误: 第 13 行的 AttributeError

这段代码在 Eclipse 中运行良好

这是代码:

from itertools import permutations
import time

x, y, z = 3, 19, 19
values = [x, y, z]
perm_obj = permutations(values)

for v in perm_obj:
    try:
        if time.strptime(str(v), '(%m, %d, %y)'): #This is line 13
            my_output.append(v)
    except ValueError:
        pass

编辑:perm_obj 是 itertools permutation method 的结果。

itertools.permutations(iterable, r=None)

编辑:我稍微更改了代码以显示 perm_obj 的外观。我希望这会有所帮助。

代码:

from itertools import permutations
from datetime import datetime

def answer(x, y, z):

    values = [x, y, z]
    perm_obj = permutations(values)
    my_output = []

    for v in perm_obj:
        try:
            print(v)
            datetime.strptime(str(v), '(%m, %d, %y)')
            my_output.append(v)
        except ValueError:
            pass

输出:

(19, 19, 3)
(19, 3, 19)
(19, 19, 3)
(19, 3, 19)
(3, 19, 19)
(3, 19, 19)

【问题讨论】:

  • 请提供一个 v?或 perm_obj
  • Ravi,我在上面编辑了我的原始帖子。
  • 如果你的代码只有10行,那么第13行的错误肯定在谷歌的代码中:)
  • 这不是完整的代码,在这之前还有一点 :-) 这段代码在一个函数中,并以 a、y、z 作为参数。所以前面有函数定义和一些import语句。
  • 哦!我在第 13 行旁边添加了一个#comment。希望这可以澄清它。

标签: python google-search attributeerror python-datetime


【解决方案1】:

看起来timedatetime.time 的一个实例,它没有strptime 方法。由于您正在构建一个日期,您可能希望它改为 datetime.datetime

import datetime
if datetime.datetime.strptime(str(v), '(%m, %d, %y)'):
    # etc

或等效:

from datetime import datetime
if datetime.strptime(str(v), '(%m, %d, %y)'):
    # etc

【讨论】:

  • 让我试试吧!谢谢
  • 我明白了,它也可以,但它仍然不喜欢那条线。
  • @Alex 如果您发布完整的错误消息而不是其中的一小部分,它将极大地帮助调试过程。不仅仅是类型和行,还有整个消息和回溯。
  • 感谢您提出这个问题,您是正确的,拥有更多信息来帮助调试很有帮助,但是,这是 Google Foobar 显示的所有错误消息:第 13 行的 AttributeError。代码在 Eclipse 中运行良好.其余代码在上面显示的内容之后。希望对您有所帮助,请告诉我。
【解决方案2】:

所以,似乎 foo.bar 项目不喜欢导入的 datetime 模块。我把它取下来,重新编写了一些代码来做 time.strptime() 正在做的事情,它开始工作了。

不幸的是,我的代码没有通过,我没有时间提交:'''(

我希望我能得到另一个邀请。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    • 2012-05-08
    • 1970-01-01
    • 2015-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多