Daha önce sorulup sorulmadığından emin değilim, ancak herhangi bir yardım bulamadım. İki boyutlu nesne listelerine sahip olduğum bir oyun yapıyorum, onları inventory
ve loot
olarak adlandırın. Onları karşılaştırmalı ve daha önce sahip olduğum şeyleri görmem gerek. Öğe, adımızın, miktarımızın ve tarifenin bulunduğu bir listedir.İki boyutlu liste nesnelerini karşılaştırarak
ben bunu nasıl ben bilemiyorum çünkü ben [0] Bir brainblock falan var [0] inv ama öğeye öğeyi karşılaştırmak gerekir, Ancak
ownd = []
for item in self.inv:
if item[0].name in loot:
ownd.append(item)
gibi bir şey düşünüyordum . Birisi bana yardım edebilir veya beni doğru yöne yönlendirebilir. Teşekkürler!!
ps. Bazılarınızın bunu aptalca kolay bir soru olarak görmesini biliyorum ama ciddi olarak sıkışıp yardım istiyorum!
DÜZENLEME: sınıftan
Daha kodu: Sorunuzu doğru anlamak
class Inventory(object):
inv = []
def __init__(self, name):
self.ownr = name
self.loc = "player_data/" + name
def add_item(self, item, amount):
for obj in self.inv:
if obj[0].name == item.name:
obj[1] = obj[1] + amount
return 1
self.inv.append([item, amount])
return 0
def compare_to_loop(self, loot, amount):
ownd = []
for item in self.inv:
if item[0].name in loot:
ownd.append(item)
return ownd
'kendini 'nereden geliyor? Cam 'inv' ve' loot' veri yapılarına bazı örnekler gönderir? –
İç listelerin nasıl karşılaştırılmasını istersiniz? Belli bir element mi, yoksa hepsi mi? – RobertR
Dikkatli kısmı yanlış kopyalamıştım, düzeltildi. Bunu yapmak istediğim isimleri karşılaştırmak ve aynı ada sahip olan öğeleri bu listeden seçmek – Duzzz