2012-06-10 12 views
8

Kiedy zrobić coś podobnego (całkowicie losowy przykład dont read pod nazwami zmiennych):Czy instrukcje Python Inline są wykonywane dwukrotnie?

variable = read_file() if read_file() else "File was empty" 

W tym przypadku nie read_file() excuted się dwukrotnie? Jeśli tak, to można to zrobić, aby wykonać tylko jeden raz, ale zachować go w jednym wierszu?

+2

To chyba zły pomysł, aby to zrobić; w jaki sposób kod, który używa 'zmiennej' wie, że plik w rzeczywistości nie zawierał' "Plik był pusty" '? –

+0

Znów całkowicie losowe nazwy zmiennych/metod – NoviceCoding

Odpowiedz

21

W takim przypadku read_file() zostanie wykonane dwa razy. Możesz to zrobić zamiast:

variable = read_file() or "File was empty" 
+0

@NoviceCoding Nie ma problemu: D – jamylak

Powiązane problemy