Python возвращает относительный родительский каталог
Я запускаю сценарии из облачного каталога с нескольких компьютеров, поэтому по разным причинам требуется доступ к относительному пути, чтобы сохранить выходные данные в других различных относительных путях. Я ожидал, что следующий скрипт вернет корневой каталог в облаке, но вместо этого он возвращает не тип. Может кто-нибудь помочь мне понять, почему?
def get_relative_path(base_folder_name, current_path):
import os
parent = os.path.split(current_path)[0]
print base_folder_name, os.path.split(current_path)[1]
print type(base_folder_name), type(os.path.split(current_path)[1])
if os.path.split(current_path)[1] == base_folder_name:
return current_path
else:
get_relative_path(base_folder_name, parent)
import os
path = os.getcwd()
x = get_relative_path('cloud_folder', path)
print type(x)
скрипт возвращает:
cloud_folder child_folder
<type 'str'> <type 'str'>
cloud_folder cloud_folder
<type 'str'> <type 'str'>
<type 'NoneType'>
Я ожидал, что он вернет строку с относительным путем к облачной папке. Почему это?
1 ответ
Решение
if os.path.split(current_path)[1] == base_folder_name:
return current_path
else:
return get_relative_path(base_folder_name, parent)
вам нужно вернуть еще случай