Вопрос А как можнье в питоне? "or" не получантся...

Пользователь
Статус
Оффлайн
Регистрация
13 Сен 2021
Сообщения
633
Реакции[?]
117
Поинты[?]
44K
1717769572355.pngвоэт это не работает блин, ошибка. хочу чтоб оно сперва argv пыталос и если не получется то os.curdir
в интернете говно не по тьеме.. в документацниях то же самое
 
Качественные читы на Warface: Aceid.cc
Начинающий
Статус
Оффлайн
Регистрация
7 Июн 2024
Сообщения
8
Реакции[?]
3
Поинты[?]
4K
Проверяешь изначально argv[1] на пустоту, если данные пусты, то выполняешь os.list.dir(os.curdir) иначе os.list.dir(argv[1])
Или же: os.listdir(sys.argv[1] if len(sys.argv) > 1 else os.curdir)
 
Пользователь
Статус
Оффлайн
Регистрация
13 Сен 2021
Сообщения
633
Реакции[?]
117
Поинты[?]
44K
Проверяешь изначально argv[1] на пустоту, если данные пусты, то выполняешь os.list.dir(os.curdir) иначе os.list.dir(argv[1])
Или же: os.listdir(sys.argv[1] if len(sys.argv) > 1 else os.curdir)
спас вторым методом 🙏
 
Качественные читы на Warface: Aceid.cc
Начинающий
Статус
Оффлайн
Регистрация
7 Июн 2024
Сообщения
8
Реакции[?]
3
Поинты[?]
4K
спас вторым методом 🙏
По сути это укороченная запись первого. Я не знаю синтаксис python, но более чем уверен что можно добиться всякого разного решения этого вопроса, те же лямбда-функции к примеру.

Если интересно, то первый вариант заключался в такой записи:

Python:
if len(sys.argv[1]) > 1:
    os.listdir(sys.argv[1])
else:
    os.listdir(os.curdir)
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,605
Реакции[?]
607
Поинты[?]
48K
на argv[1] надо было проверить раньше, банальный контракт по поведению
 
Пользователь
Статус
Оффлайн
Регистрация
13 Сен 2021
Сообщения
633
Реакции[?]
117
Поинты[?]
44K
Сверху Снизу