2016-06-13 76 views
1

我一直在閱讀網站多年,今天是我的第一個問題。Google Foobar:提交解決方案時出現屬性錯誤

我被邀請在Google Foobar上玩Python搜索,因爲我在完成教程後測試了我發現的新知識。

當我提交我的 'solution.py' 我得到以下錯誤: AttributeError的第13行

此代碼運行在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) 
+0

請提供訴一個例子或perm_obj – ravigadila

+0

拉維?我編輯了上面的原始文章 – Alex

+0

如果你的代碼只有10行,第13行的錯誤必須在谷歌的代碼:) – 9000

回答

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 
+0

讓我試試看!謝謝 – Alex

+0

我明白,它也可以工作,但它仍然不喜歡那條線。 – Alex

+0

@Alex如果您發佈完整的錯誤消息而不是其中的一小部分,它將對調試過程有很大幫​​助。不只是類型和線路,而是整個信息和追蹤。 –

0

所以,這似乎是foo.bar項目不喜歡進口日期時間模塊。我把它關掉了,並重新編寫了一些代碼來完成time.strptime()所做的工作,並開始工作。

不幸的是,我的代碼沒有通過,我跑出來的時候提交:「」'(

我希望我再邀請