Es gibt eine sehr nützliche Klasse namens os.path in Python, aber wenn Sie absolute und relative Pfade kombinieren,
# abs_path = "/usr/hoge/", rel_path = "./poyo/"
path.normpath(path.join(abs_path, rel_path))
# "/usr/hoge/poyo"
Ich mache es oft Ich dachte, dies könnte mit URL verwendet werden,
# abs_path = "http://hoge/", rel_path = "./poyo/"
path.normpath(path.join(abs_url, rel_url)
# "http:/hoge/poyo/"
Ich war wütend, dass ich die URL nicht öffnen konnte. Ich war etwas besorgt darüber, aber der Grund war einfach: Die URL "http: // hoge /" wurde in path.normpath in "http: / hoge" konvertiert. Da path eine Klasse für den Pfad des Dateisystems ist, hatte es eine solche Spezifikation. Es scheint, dass die urljoin-Methode der urlparse-Klasse verwendet wird, um URLs zu verbinden.
# abs_path = "http://hoge/", rel_path = "./poyo/"
urlparse.urljoin(abs_url, rel_url)
# "http://hoge/poyo/"
Recommended Posts