convertisseur d'unité avec dictionnaire (Python)

Je veux construire un convertisseur d'unité et jusqu'à présent, j'ai fait ceci:
units = {"mm": {"mm": 1, "cm": 1 / 10, "m": 1 / 1000, "km": 1 / 1000000}, "cm": {"mm": 10, "cm": 1, "m": 1 / 100, "km": 1 / 100000}, "m": {"mm": 1000, "cm": 100, "m": 1, "km": 1 / 1000}, "km": {"mm": 1000000, "cm": 100000, "m": 1000, "km": 1}}

Mais je ne sais pas quelles devraient être mes prochaines étapes, tout conseil sera apprécié car j'utilise pour la première fois un dictionnaire et je ne sais pas comment l'utiliser correctement. Merci d'avance.


Solution du problème

Ajusté sur votre base, essayez-le

def unit_conversion(data, unit_to):
units = {
"mm": {"mm": 1, "cm": 1 / 10, "m": 1 / 1000, "km": 1 / 1000000},
"cm": {"mm": 10, "cm": 1, "m": 1 / 100, "km": 1 / 100000},
"m": {"mm": 1000, "cm": 100, "m": 1, "km": 1 / 1000},
"km": {"mm": 1000000, "cm": 100000, "m": 1000, "km": 1}
}
unit = "".join([item for item in data if item in "cmk"])
num = data.rstrip(unit).strip()
return "{}{}".format(float(num) * units.get(unit).get(unit_to), unit_to)
print(unit_conversion("12341cm", "km"))

Commentaires

Posts les plus consultés de ce blog

La fonction GCP Cloud pour écrire des données dans BigQuery s'exécute avec succès, mais les données n'apparaissent pas dans la table BigQuery

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Le shell POSIX (sh) redirige stderr vers stdout et capture stderr et stdout dans des variables