2016-12-14 5 views
-2

Я написал программу python, и когда я это понимаю, он говорит, что есть IndentationError, я знаю, что это такое, но не понимаю почему. Мне все кажется законным:/Ошибка в отступлении, но не понимаю почему?

# encoding : utf-8 

from math import * 
def menu(): 
    print(""" 
    Choisissez parmi ces actions : 

    [1] Afficher un vecteur donné par deux points 
    [2] Afficher le résultat de l'addition ou de la soustraction de deux vecteurs 
    [3] Afficher le résultat de la multiplication d'un vecteur par un nombre 
    [4] Afficher le produit scalaire de deux vecteurs de R2 ou de R3 
    [5] Afficher le produit vectoriel de deux vecteurs de R3 
    [6] Afficher la norme d'un vecteur 
    [7] Afficher la normalisation d'un vecteur 
    [8] Afficher le projeté orthogonal d'un vecteur sur un autre 
    [9] Afficher l'angle (compris entre 0° et 180°) entre deux vecteurs 
    [10] Afficher si un vecteur est unitaire ou non 
    [11] Afficher si deux vecteurs sont colinéaires ou non 
    [12] Afficher si deux vecteurs sont orthogonaux ou non 

    [0] Quitter le programme 
    """) 

    choice =input() 
    if choice == "1": 
     print("Entrez votre vecteur sous la forme d'une liste : ") 
     vector = eval(input("Vecteur")) 
     print(vector) 
    elif choice == "2": 

    elif choice == "3": 
#it says that the line just above contains an error 
    elif choice == "4": 

    elif choice == "5": 

    elif choice == "6": 

    elif choice == "7": 

    elif choice == "8": 

    elif choice == "9": 

    elif choice == "10": 

    elif choice == "11": 

    elif choice == "12": 

    elif choice == "0": 
     return None 

Не против французской части, это не важно. Важная часть состоит из функций elif.

PS: Я использую Python с 6 месяцев, так что я знаю, что я делаю, но я не про

спасибо: D

+1

Что планируется включить в эти 'elif' ** _ statements _ **? –

+3

Блок 'elif' нуждается в некотором контенте. Если вы хотите ничего не делать на данный момент (во время разработки), по крайней мере, добавьте 'pass'. – Matthias

+0

Что делает 'pass'? @Matthias – Blaxou

ответ

1

Вы не можете написать что-то вроде:

elif choice == "2": 

elif choice == "3": 

Это вызывает IndentationError исключения, так что если вы хотите, чтобы осуществить это позже вы можете использовать pass statement, как показано ниже:

elif choice == "2": 
    pass 

elif choice == "3": 
    pass 

От pass документация:

Пропускная инструкция ничего не делает. Он может использоваться, если инструкция требуется синтаксически, но программа не требует никаких действий.

1

Вы не можете оставить что-то ниже «:» пустым.

Если вы не хотите, чтобы сделать что-нибудь, то пишите:

elif choice == "2": 
    pass