Python's Äquivalent von && (logisch-und) in einer if-Anweisung

Hier's mein Code:

def front_back(a, b):
  # +++your code here+++
  if len(a) % 2 == 0 && len(b) % 2 == 0:
    return a[:(len(a)/2)] + b[:(len(b)/2)] + a[(len(a)/2):] + b[(len(b)/2):] 
  else:
    #todo! Not yet done. :P
  return

Ich erhalte einen Fehler in der IF-Bedingung. Was mache ich falsch?

Lösung

Sie würden und anstelle von && verwenden.

Kommentare (6)

Python verwendet und und oder Konditionale.

d.h.

if foo == 'abc' and bar == 'bac' or zoo == '123':
  # do something
Kommentare (6)

Zwei Bemerkungen:

  • Verwenden Sie und und oder für logische Operationen in Python.
  • Verwenden Sie 4 Leerzeichen zum Einrücken statt 2. Sie werden sich später dafür bedanken, denn Ihr Code wird so ziemlich genauso aussehen wie der von allen anderen. Siehe PEP 8 für weitere Details.
Kommentare (0)