Python-Handspiel (einzeilige Notation von if)

Was ist dieser Artikel?

Ich bin noch neu im Python-Schreiben. .. .. Die einzeilige Notation im Titel sagt "???", also mache ich mir ein paar Notizen. .. ..

Na und?

Mit Python können Sie ein if-Dokument in einer Zeile schreiben. Es ist so.

# (So was)
>>> print('True') if True else print('False')
True

Ich wollte das damit schreiben.

# (Dies)
>>> if True:
...     para = 'True'
... else:
...     para = 'False'
...
>>> para
'True'
>>>                                                                                                    

Als ich es schrieb, bekam ich einen Fehler.

>>> para = 'True' if True else para = 'False'
  File "<stdin>", line 1
SyntaxError: can't assign to conditional expression
>>>

Es scheint so richtig zu schreiben.

>>> para = 'True' if True else 'False'
>>> para
'True'

Das war's.

Ersetzen Sie die Variable "para" auf der linken Seite durch die rechte Seite. Die Geschichte, was als rechte Seite zu schreiben ist. In diesem Sinne gilt der Wert "'True', wenn True else'False '", aber Der Wert "'True' wenn True else para = 'False'" ist unnatürlich. Ich war ein wenig überzeugt.

>>> 'True' if True else 'False'
'True'
>>> 'True' if True else para = 'False'
  File "<stdin>", line 1
SyntaxError: can't assign to conditional expression

Referenzierte Site

■ Schreiben Sie eine if-Anweisung in eine Zeile mit dem ternären Operator von Python (bedingter Operator). https://note.nkmk.me/python-if-conditional-expressions/

■Why is this simple conditional expression not working? [duplicate] https://stackoverflow.com/questions/32954481/why-is-this-simple-conditional-expression-not-working

Ein bisschen tief graben ...

Nein, ich habe mich gefragt, ob ich nicht schlafen würde, weil es ein Wochentag ist, aber ich war neugierig.

Ich dachte, das wäre das erste Missverständnis.

(Anweisung wird ausgeführt, wenn True) if (Bedingung) else (Anweisung wird ausgeführt, wenn False)

Das ist aber etwas anders. (Vielleicht ist es in gewissem Sinne wahr ...) Bis zuletzt gibt die if-Anweisung einen Wert zurück, der auf einer Bedingung basiert. Eine solche.

(Wert wird zurückgegeben, wenn True) if (Bedingung) else (Wert wird zurückgegeben, wenn False)

Dann fragte ich mich, was die erste Druckaussage war.

>>> a = print(3)
3
>>> a
>>> type(a)
<class 'NoneType'>
>>> a
>>> a is None
True

Das war's. Ist der Druck in C # ein ungültiger Typ? Nein. Ich frage mich, ob es None im Objekttyp zurückgibt.

Die Zeichen werden also während der Ausführung gedruckt, um den Wert "print ('True')" zu erhalten.

Ich bin überzeugt.

Recommended Posts

Python-Handspiel (einzeilige Notation von if)
Python-Handspiel (berechnet voller Mordred)
Python Handspiel (Division)
Python-Handspiel (zweidimensionale Liste)
Fizzbuzz in Python (in einer Zeile)
Entschlüsseln Sie eine Codezeile in Python Lambda, Karte, Liste
Python-Handspiel (Argparse-Mindestcode)
Python-Handspiel (Pandas / DataFrame-Beginn)
Segfo Python in einer Zeile
[Python] Richtige Verwendung der if-Anweisung
Erstellen Sie eine andere Version der Python-Conda-Umgebung mit einer Befehlszeile
CGI Server (1) Python Edition in einer Zeile
Python-Handspiel (Deskriptorberechnung: seriöse Version)
Zerlegen Sie Befehlsargumente in einer Zeile in Python
[Python] Bool-Wertinversion in einer Zeile
Grundlegende Grammatik des Python3-Systems (inklusive Notation)
Python-Handspiel (Beginnen wir mit AtCoder?)
Python-Handspiel (Interoperation zwischen CSV und PostgreSQL)
Mach ein Janken-Spiel in einer Zeile (Python)
Formatieren Sie eine Zeile json, um die Anzeige zu vereinfachen
Python if-Anweisung
Kombinieren Sie mehrere CSV-Dateien mit Python zu einer CSV-Datei (vorausgesetzt, nur eine Kopfzeile)
Spielen Sie Python async
Spielen Sie mit 2016-Python
Python-Grundlagen ①
Grundlagen von Python ①
Kopie von Python
LINE Heroku Python
So überprüfen Sie in Python, ob sich eines der Elemente einer Liste in einer anderen Liste befindet
[Python] if-Anweisung
Einführung von Python
Python-Textlesung für mehrere Zeilen und eine Zeile
[Python-Anfänger] Wenn __name__ == Bewegen Sie Ihre Hand, um '__ main__' zu verstehen.
Python, das viele Excel zu einem Excel zusammenführt
Ein Liner, der mit Python ein Umfangsverhältnis von 1000000 Stellen ausgibt
[Python] Verwenden der Linien-API [1. Erstellung des Beauty-Bots]
[Zum Spielen] Versuche Yuma zu einem LINE Bot zu machen (Python)
Lassen Sie Python in einer Zeile segfo, ohne ctypes zu verwenden
Python-Handspiel (Spaltennamen aus CSV-Datei abrufen)