ãç²ãæ§ã§ãã
ä»åã¯ã¡ãã£ã¨ããã©ã¤ãã©ãªç´¹ä»çãªè¨äºã§ãã
Pythonã§ä½¿ç¨ã§ãããGooeyãã¨ããã©ã¤ãã©ãªãã§ãããPythonã¹ã¯ãªãããç°¡åã«GUIåã§ãã¾ããçµæ§åãã使ã£ã¦ããã®ã§ããæ¥æ¬èªã®è¨äºãã»ã¼ç¡ãã®ã§ãã£ãããªã®ã§ã¾ã¨ãããã¨æãã¾ãã
ï¼èªåç¨ã®åå¿é²ã¨ãã¦ãæ®ãã¦ããããã¨ãããã¤ãã®åæ©ã§ãç¬ï¼
Gooeyã®å
¬å¼GitHubãªãã¸ããªã¯ãã¡ãã§ãã
github.com
ã¾ããå
¬å¼ã®å®è£
ä¾ãããã¾ãã®ã§æ°ã«ãªãæ¹ã¯ãã¡ãã
github.com
- Gooeyã®æ¦è¦
- Gooeyã使ãã¡ãªããã»ãã¡ãªãã
- å®éã«å®è£ ããå ´å
- ã½ã¼ã¹ã³ã¼ã
Gooeyã®æ¦è¦
Pythonã®æ¨æºã¢ã¸ã¥ã¼ã«ã®ãargparseãã使ç¨ããã³ãã³ãã©ã¤ã³å¼æ°ã«ãããé¨åãå
¥åãããã©ã¼ã ã¨ãå®éã«å®è¡ãããã¨ãã®ã³ãã³ãã©ã¤ã³ä¸ã®ãã°ã表示ããGUIã使ããã¨ããã©ã¤ãã©ãªã§ãã
詳ããã¯ä¸è¨ã§å®è£
ãã¦ããã®ã§ãåèã«ã
ä¾ãã°ãargparseã使ã£ã¦æ¸ãããä¸è¨ã®ãããªã³ã¼ããããå ´å
from argparse import ArgumentParser def main() -> None: parser = ArgumentParser(description="ãµã³ãã«ããã°ã©ã ã§ãã") parser.add_argument("number", type=int, help='æ°å¤ãå ¥å') parser.add_argument("-s", "--string", type=str, default="ãµã³ãã«æåå", help='æååãå ¥å') parser.add_argument("--flag", action='store_true') parser.add_argument("--choice", default="Google", choices=['Google', 'Apple', 'Facebook', 'Amazon']) parser.add_argument("--list", nargs='*', choices=['Microsoft', 'Amazon', 'Tesla', 'Alphabet', 'NVIDIA', 'Apple']) args = parser.parse_args() print("number", args.number) print("string", args.string) print("flag", args.flag) print("choice", args.choice) print("list", args.list) if __name__ == "__main__": main()
å®è¡ããå ´åãä¾ãã°ä¸è¨ã®ã³ãã³ããªãåºåã¯ä¸å³ã®ããã«ãªãã¾ãã
python sample.py 2025 --list Microsoft

ãããGooeyã使ç¨ãã¦GUIåããã¨ãã³ãã³ãå
¥åã®é¨åãä¸å³ã®[å
¥åç»é¢]ãå®è¡çµæãä¸å³ã®[å®è¡ç»é¢]ã¨ãªãã¾ãã
[å
¥åç»é¢]
[å®è¡ç»é¢]
å®è£
ã«é¢ãã¦ã¯å
ã»ã©ã®argparseã®ãµã³ãã«ã³ã¼ãã®main颿°ã«ãã³ã¬ã¼ã¿ã§
@Gooey
ã¨ä»ããã®ã¿ã§ãã
from argparse import ArgumentParser from gooey import Gooey @Gooey def main() -> None: parser = ArgumentParser(description="ãµã³ãã«ããã°ã©ã ã§ãã") # 以ä¸åæ§ã®ã³ã¼ãâ¦
Gooeyã使ãã¡ãªããã»ãã¡ãªãã
åºæ¬çã«ã¯ãç°¡æçã«GUIåã§ãããã¨ãã1ç¹ã«ã¡ãªãããéç´ããã¦ããã¨ããã®ãå人çãªèªèã§ãããããã¿ã¤ãã®ä½æãªããã«ä¾¿å©ã§ãã
ãã¡ãªããã§ä¸çªå¤§ããã®ããã«ã¹ã¿ãã¤ãºæ§ãä½ãããã¨ã§ããããâ¦ãæ¦è¦ã§èª¬æããå½¢ã®æ©è½ããåºæ¬ä½¿ãã¾ããããã¼ã¹ãwxPythonãªã®ã§ã©ã¤ãã©ãªã®ã½ã¼ã¹ãæ¹é ãããã¨ãã§ããããããã¾ããã試ãããã¨ã¯ãªãã§ãã
ðãã¤ã³ã
- ç°¡æçãªGUIãç°¡åã«ä½æã§ãã
- å°å ¥ãç°¡åï¼pip installããã ãï¼
ðãã¤ã³ã
- ã«ã¹ã¿ãã¤ãºæ§ãä½ã
- argparseã«ã¤ãã¦ã®ç¥èã¯å¿ è¦
- ã©ã¤ãã©ãªã®æ´æ°ãæ¢ã¾ã£ã¦ãã
å®éã«å®è£ ããå ´å
å
¬å¼GitHubã®READMEã«ããªã詳ããæ¸ããã¦ããã®ã§ãã¡ãåç
§ã
ã¾ããåèãµã¤ãã¯æµ·å¤ã®ãµã¤ãã§ãããåãã©ã¼ã ã®ç´°ããè¨å®ãªã©ãã¡ããã¡ã詳ãã解説ãã¦ããã¦ããã®ã§æ·±ãç¥ãããæ¹ã¯ãã¡ããè¦ãã®ãè¯ãã¨æãã¾ããï¼ãã ãã¡ãã£ã¨æ
å ±ãå¤ãã®ã§ä½¿ããªãå
容ãããããâ¦ãï¼
åºæ¬çã«ã¯ä¸è¨ã®ãµã¤ãã§äºè¶³ãã¾ãããæ¥æ¬èªåã®é¨åã ãã¡ã¢çãªå½¢ã§æ®ãã¦ããã¾ãã
åèãµã¤ã
æ¥æ¬èªå
æ¥æ¬èªåèªä½ã¯å
ããå¯è½ã§ããæ¥æ¬èªãããªãæªããã£ãããã¨ããã©ããæ¥æ¬èªåã§ãã¦ãªãã¨ãããããã¾ãã
ä¿®æ£ããå ´åã¯ã¤ã³ã¹ãã¼ã«ããGooeyã©ã¤ãã©ãªã®ãã©ã«ãå
ã«ãããjapanese.jsonããç·¨éãã¾ãã
site-packages\gooey\languages\japanese.json
ãããã¯èªèº«ã§è¨èªãã¡ã¤ã«ã使ãã¦ããã¸ã§ã¯ããã©ã«ãå
ã«é
ç½®ãã¦ãããã¨ãå¯è½ã§ããä¸è¨ã¯å®è¡ãã¡ã¤ã«ã¨åãé層ã«è¨èªãã©ã«ããé
ç½®ããä¾ã§ãã
![]()
from argparse import ArgumentParser from gooey import Gooey @Gooey( language="japanese", language_dir="./language" ) def main() -> None: parser = ArgumentParser(description="ãµã³ãã«ããã°ã©ã ã§ãã") # 以ä¸åæ§ã®ã³ã¼ãâ¦
ãã£ããã¨ç´ãã¦ã¿ã¾ããã

ã½ã¼ã¹ã³ã¼ã
ç§ã使ããã³ã¼ãã¯ä¸è¨ã«æ®ãã¦ãã¾ãã®ã§ãå¿
è¦ã«å¿ãã¦ã確èªãã ããã
github.com