Open cr4ftsm4n opened 6 years ago
ORD_A = ord("A") // 65
ORD_Z = ord("Z") // 90
ORD_LOWER_A = ord("a") //97
ORD_LOWER_Z = ord("z") //122
sum
and list comprehension
detect_anagrams
:)
Ran 12 tests in 0.002s
FAILED (failures=6)
* 018_allergies
素晴らしい
tostrnum = str(number)
...
if tostrnum.isdigit(): # もちろん数字だよ
raise
の書き方が変for i in text:
⬇️
for c in text:
charで遍歴するから、変数名はi(intの場合多用)よりc(charの場合多用)の方が相応しい気がする。
from functools import reduce
忘れてない
dictitem
を全部Allergies.dictitem
に直したら、テストOKsum_of_squares
もlist comprehensionにしたら。。。elif x.isupper() == True:
=> elif x.isupper():
from string import ascii_lowercase, ascii_uppercase
range
利用した方が def difference(count):
return square_of_sum(count) - sum_of_squares(count)
STATE_A = 1
STATE_B = 2
...
のようにintにした方がよい
def detect_anagrams(word, candidates):
s = []
for x in candidates:
if len(word) == len(x):
ls1 = list(word.lower())
ls2 = list(x.lower())
if ls1 == ls2:
break
ls1.sort()
ls2.sort()
if ls1 == ls2:
s.append(x)
return s
n=number
変数のrenameあんまりいらない気がする、やっぱ変な変数名だと、気に入らない。 if(i == count):
break
最後に行ったら、わざわざbreakしなくても、loopから抜けるので、
018_allergies LGTM
def is_allergic_to(self, item):
return item in self.lst(self)
でpython3.6に下記エラー発生する。
TypeError: 'list' object is not callable
def is_allergic_to(self, item):
return item in self.lst
だと、テストOK
for i in range(0,length):
sum = int(str(number)[i:i+1])**length + sum
↓
for c in str(number):
sum += int(c) ** length
の方がよい。
pull requestしてくれて、ありがとう。そちらにレビューするので、そちらに参照してくささい。
お疲れ様です。コメントしました。 全体的に以下の問題散見します。