Nachstehend ist mein aktueller Code, ich bin ziemlich neu in Python. Ich versuche eine Liste von Photo-Instanzen zu erstellen, wobei jede Photo-Instanz die Daten von jedem Tupel in der tups_list verwendet. und speichern Sie diese Liste in einer Variablen photo_insts. Momentan erhalte ich keinen Fehler, buchstäblich passiert nichts im Terminal, wenn ich versuche, die Datei auszuführen.Liste der variablen Instanzen
photo_insts = []
tups_list = [("Portrait 2","Gordon Parks",["chicago", "society"]),("Children in School","Dorothea Lange",["children","school","1930s"]),("Airplanes","Margaret Bourke-White",["war","sky","landscape"])]
class Photo2(object):
def __init__(self, title_str, photo_by,tags_list):
self.title = title_str
self.artist = photo_by
self.tags = tags_list
for i in tups_list:
photo_tuple = (i[0],i[1],i[2])
photo_insts.append(photo_tuple)
print i
Im Folgenden sind Tests für unterschiedliche Werte zu überprüfen, um zu laufen:
class Phototest(unittest.TestCase):
def test_photo_insts1(self):
self.assertEqual(type(photo_insts),type([]))
def test_photo_insts2(self):
self.assertEqual(type(photo_insts[0]),type(Photo("Photo2","Photo Student",["multiple","tags"])))
def test_photo_insts3(self):
self.assertEqual([x.title for x in photo_insts],["Portrait 2", "Children in School", "Airplanes"])
def test_photo_insts4(self):
self.assertEqual([x.artist for x in photo_insts],["Gordon Parks","Dorothea Lange","Margaret Bourke-White"])
def test_photo_insts5(self):
self.assertEqual([x.tags for x in photo_insts],[["chicago","society"],["children", "school","1930s"],["war","sky","landscape"]])
Wenn das, was Sie auf dem Laufenden der gesamte Code ist - dann werden nur die ersten beiden Zeilen haben keine Wirkung; Die Definition von '' Class Photo2'' ist sinnlos, da Sie niemals Instanzen dieser Klasse erstellen. Diese letzten 4 Zeilen sollten wahrscheinlich außerhalb der Klasse liegen und sollten ein '' Photo2() '' anstelle eines Tupels erzeugen. – jasonharper
@ jasonharper Ich bin immer noch ein wenig verwirrt, ich dachte, dass ich Instanzen für die Klasse Photo2 mit meinem def __init __ erstellt habe (self, title_str, photo_by, tags_list): und die aufgelisteten Attribute. – sammie1991