Pakuję aplikację Python pod PIP, dostarczając plik setup.py. Podczas instalacji chcę zapytać użytkownika o kilka wartości (nazwa użytkownika, inne wartości konfiguracyjne), wartości te są następnie zapisywane w pliku konfiguracyjnym aplikacji zapisanym w katalogu użytkownika.Python setup.py: zapytaj o dane konfiguracyjne podczas konfiguracji
Czy istnieje specjalna metoda PIP/distutils, aby zapytać o te wartości konfiguracyjne podczas konfiguracji? czy mam po prostu użyć input
zapytać użytkownika, jak poniżej:
#!/usr/bin/env python
from distutils.core import setup
cfg['name'] = input("Please your username:")
cfg.save()
setup(name='appname',
version='1.0',
description='App Description',
author='Author',
author_email='[email protected]',
packages=['mypackage'],
)
Albo powinienem opuścić prośbą o tych wartościach, a zamiast pozwolić użytkownikowi skonfigurować aplikację na pierwszym uruchomieniu?
Wiem, że wszystkie te sposoby są możliwe, ale czy są na to jakieś konwencje lub najlepsze praktyki? A może znasz popularny projekt Pythona, robiący podobne rzeczy, który jest dobrym przykładem?
Nie sądzę, że istnieje "standard" dla takich rzeczy. Lubię opóźniać żądanie ustawień po instalacji, chyba że istnieją pewne ścieżki, które są wymagane do rzeczywistej instalacji. – Bogdan
Nie należy używać fazy instalacji do interakcji użytkownika. Jeśli chcesz zapytać o coś od użytkownika, zrób to, gdy aplikacja jest uruchamiana po raz pierwszy. –