Wiem, że jest podobne pytanie już zadane, ale nie odpowiada na to, czego potrzebuję, ponieważ moje jest trochę inne.Powrót z argumentem wewnątrz generatora
Mój kod:
def tFileRead(fileName, JSON=False):
with open(fileName) as f:
if JSON:
return json.load(f)
for line in f:
yield line.rstrip('\n')
Co chcę zrobić: jeśli JSON
jest prawdziwe, oznacza to jej odczyt z pliku json i chcę wrócić json.load(f)
, w przeciwnym razie, chcę uzyskując linie plik do generatora.
Próbowałem alternatywy zamiany generatora w json, ale to stało się bardzo niechlujne, bardzo szybkie i nie działa zbyt dobrze.
jeśli nie JSON spróbuj zwrócić zamknięcie, które jest generatorem – Aaron
, pojedyncza funkcja musi albo powrócić, albo ulec. nie oba: – Aaron
Możesz "zrezygnować z json.load", ale to tylko wyda klucze z dyktatury. Jak zamierzasz korzystać z tej funkcji w obu przypadkach? –