Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 27, 2015 09:40:17

Xryst
Зарегистрирован: 2015-01-30
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

Не пойму где ошибка, должно вернуть False…если нет пути, а возращает None

def file_search(folder, filename):
    way_to_file = folder[0]
    for i in folder :
        if i == filename:
            return  way_to_file + '/' + filename
        elif type(i) == list :
            found_file=file_search(i, filename)
            if found_file!=None:
                return way_to_file + '/' + found_file
            if found_fil == None:
                return 'False'

Отредактировано Xryst (Фев. 27, 2015 09:41:09)

Офлайн

#2 Фев. 27, 2015 12:04:47

van
От: Харьков
Зарегистрирован: 2014-08-27
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

Может так?

def file_search(folder, filename):
    n = False
    way_to_file = folder[0] + '/'
    for i in folder:
        if i == filename:
            return way_to_file + i
        elif type(i) == list:
            try:
                way_to_file += file_search(i, filename)
                return way_to_file
            except TypeError:
                continue
    # если файла нет в заданном списке каталогов, то
    if n == False:
        return n

Офлайн

#3 Фев. 27, 2015 14:59:22

Xryst
Зарегистрирован: 2015-01-30
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

Можно вопрос, а как в python вызвать фукцию file_search для ёё проверки?
Нпример вызвать фукцию с такими ргументами

 (['C:', 'backup.log', 'ideas.txt'], 'ideas.txt')

Отредактировано Xryst (Фев. 27, 2015 15:01:25)

Офлайн

#4 Фев. 27, 2015 15:53:44

sander
Зарегистрирован: 2015-02-19
Сообщения: 317
Репутация: +  53  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

почему бы не использовать os.path ?

Офлайн

#5 Фев. 27, 2015 17:40:18

Xryst
Зарегистрирован: 2015-01-30
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

sander
почему бы не использовать os.path ?
честно, я не пойму как сним работать((

Офлайн

#6 Фев. 27, 2015 20:12:27

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

Не пойму где ошибка, фукция возращает None, а должна False

Xryst
а как в python вызвать фукцию file_search для ёё проверки?
print file_search(['C:', 'backup.log', 'ideas.txt'], 'ideas.txt')
sander
почему бы не использовать os.path ?
http://python.su/forum/topic/26338/



————————————————
-*- Simple is better than complex -*-

Отредактировано terabayt (Фев. 27, 2015 20:15:14)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version