Simple convertisseur d'unité en Python

Je suis nouveau en programmation et je suis en train de faire un simple convertisseur d'unité en python. Je veux convertir les unités dans le système métrique et le système métrique au système impérial et vice-versa. J'ai commencé avec ce code et j'ai trouvé cette méthode est lente et efficace, Comment puis-je code ce de manière plus efficace?

import math
import time
"""Unit Converter"""
#Welcome and variable setting
print ("Welcome to Sam's Unit Converter")
cat = raw_input ("Which category would you like to convert? we support length(l) and Weight(w):  ")
if cat == ("l"):
unit1 = raw_input ("Which unit would you like to convert from: ")
unit2 = raw_input ("Which unit would you like to convert to: ")
num1 = raw_input ("Enter your value: " )

    ##Calculations  

if unit1 == "cm" and unit2 == "m":
    ans = float(num1)/100       
elif unit1 == "mm" and unit2 == "cm":
    ans = float(num1)/10
elif unit1 == "m" and unit2 == "cm":
    ans = float(num1)*100
elif unit1 == "cm" and unit2 == "mm":
    ans = float(num1)*10
elif unit1 == "mm" and unit2 == "m":
    ans = float(num1)/1000
elif unit1 == "m" and unit2 == "mm":
    ans = float(num1)*1000  
elif unit1 == "km" and unit2 == "m":
    ans = float(num1)*1000
elif unit1 == "m" and unit2 == "km":
    ans = float(num1)/1000
elif unit1 == "mm" and unit2 == "km":
    ans = float(num1)/1000000

Merci pour votre aide.

  • Cette question est au sujet de l'amélioration de code de travail. Il serait plus apte à la Revue de Code.
  • Merci, je vais poster là-bas, je ne savais même pas qu'elle existait.
  • Voulez-vous dire qu'il a été lent à écrire?
  • Oui, une fois j'ai fait toutes les combinaisons, ce serait prendre un temps très long. J'ai aussi été en espérant pour ajouter du poids, de vitesse, d'énergie et de stockage de données.
  • Pour les futurs avis, si vous souhaitez que votre question a déménagé à l'autre SE site, vous pouvez le signaler à la modération et demander à être déplacé vers le nouveau site.
  • Je pense qu'un dictionnaire de dictionnaires serait votre meilleur pari ici. Si vous êtes à poster à CodeReview je pouvais écrire ce que je pense, comme une réponse là-bas.
  • Vous pourriez être intéressé par Pinte: un Python unités de la bibliothèque.

InformationsquelleAutor SalamalCamel | 2015-08-19