Pythons motsvarighet till && (logiskt-och) i en if-sats

Här är min kod:

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

Jag får ett fel i IF-bestämmelsen. Vad gör jag fel?

Lösning

Du vill ha och i stället för &&.

Kommentarer (6)

Python använder och och eller villkor.

Det vill säga.

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

Två kommentarer:

  • Använd och och eller för logiska operationer i Python.
  • Använd 4 mellanslag för indrag i stället för 2. Du kommer att tacka dig själv senare eftersom din kod kommer att se ungefär likadan ut som alla andras. Se PEP 8 för mer information.
Kommentarer (0)