0
所以我有一個函數count_by_type(db, stype)
我必須計算有多少單類型和雙類型的口袋妖怪,類型匹配stype存在,對它們進行計數,然後將其求和成int 。函數返回一組ints而不是添加整數
給定一個叫做分貝格式,像這樣字典:
sample_db = {
"Bulbasaur": (1, "Grass", "Poison", 45, 49, 49, 45, 1, False),
"Charmander": (4, "Fire", None, 39, 52, 43, 65, 1, False),
"Charizard": (6, "Fire", "Flying", 78, 84, 78,100, 1, False),
"Moltres": (146, "Fire", "Flying", 90,100, 90, 90, 1, True),
"Crobat": (169, "Poison", "Flying", 85, 90, 80,130, 2, False),
"Tornadus, (Incarnate Form)": (641, "Flying", None, 79,115, 70,111, 5, True),
"Reshiram": (643, "Dragon", "Fire", 100,120,100, 90, 5, True)
}
我實施了一些代碼,做什麼上面描述。這裏:
def count_by_type(db, stype):
single_type_count = 0
dual_type_count = 0
total_count = 0
for pokemon in db:
if (db[pokemon][1] == stype and db[pokemon][2] != stype) or (db[pokemon][1] != stype and db[pokemon][2] == stype):
single_type_count += 1
if (db[pokemon][1]== stype or db[pokemon][2] == stype):
dual_type_count += 1
total_count = single_type_count + dual_type_count
return total_count
的問題是,它返回一組等(1,2,3)或(4,0,4),而不是添加計數器所以它會分別6或8返回。
編輯:其實我回來了一個單一的整數,我需要以符合設置符號的方式返回值。對於那個很抱歉。