Как создать меню с выбором функций на Python?
Мне нужно, чтобы после выбор каждой функции, у меня заново открывалось меню, и только при выборе нуля в меню, он выходил из неё. Пример:
print("1. выбор действия один") print("2. выбор действия два") print("3. выбор действия три") print("0. выйти из программы") default = input("Выберите пункт: ")
Отслеживать
задан 29 ноя 2020 в 18:39
1 1 1 серебряный знак 3 3 бронзовых знака
Ну, зациклите код из вопроса, а из input принимайте значение в переменную, в которой и проверяйте введенное значение
29 ноя 2020 в 18:43
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
while True: print("1. выбор действия один") print("2. выбор действия два") print("3. выбор действия три") print("0. выйти из программы") cmd = input("Выберите пункт: ") if cmd == "1": # действие 1 elif cmd == "2": # действие 2 elif cmd == "3": # действие 3 elif cmd == "0": break else: print("Вы ввели не правильное значение"
Отслеживать
ответ дан 29 ноя 2020 в 18:45
19.8k 6 6 золотых знаков 22 22 серебряных знака 56 56 бронзовых знаков
- python
- menu
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.4.30.8420
Как сделать выбор папки в скрипте?
Здраствуйте, есть скрипт, который копирует файлы из одной папки в другую.
Как сделать что бы ползователь сам мог выбирать из какой и в какую копировать файлы? желательно графический интерфейс.
import shutil import time from watchdog.events import FileSystemEventHandler from watchdog.observers import Observer class EventHandler(FileSystemEventHandler): def on_created(self, event): print(event.event_type, event.src_path) print('О новый файл! Я его копирую!') shutil.copy(event.src_path, 'C:\\test\\backup') if __name__ == "__main__": path = r"C:\test\testcopy" event_handler = EventHandler() observer = Observer() observer.schedule(event_handler, path, recursive=True) observer.start() try: while True: time.sleep(1) except KeyboardInterrupt: observer.stop() observer.join()
- Вопрос задан более года назад
- 243 просмотра
2 комментария
Простой 2 комментария
Сергей П @trapwalker Куратор тега Python
оформите код с помощью специального тега
jslow1998 @jslow1998 Автор вопроса
Сергей Паньков, так правильно?
Решения вопроса 1
import os import shutil import time from watchdog.events import FileSystemEventHandler from watchdog.observers import Observer class EventHandler(FileSystemEventHandler): def __init__(self, dest_folder): super().__init__() self.dest_folder = dest_folder def on_created(self, event): print(event.event_type, event.src_path) print('О новый файл! Я его копирую!') shutil.copy(event.src_path, self.dest_folder) if __name__ == "__main__": src_path = input("Введите путь к исходной папке: ") dest_path = input("Введите путь к папке назначения: ") if not os.path.exists(src_path): print(f" не существует.") exit() if not os.path.exists(dest_path): print(f" не существует.") exit() event_handler = EventHandler(dest_path) observer = Observer() observer.schedule(event_handler, src_path, recursive=True) observer.start() observer.join()
Ответ написан более года назад
Комментировать
Нравится Комментировать
Ответы на вопрос 2
Сергей П @trapwalker Куратор тега Python
Программист, энтузиаст
from tkinter import filedialog from tkinter import * root = Tk() root.withdraw() folder_selected = filedialog.askdirectory()
Ответ написан более года назад
Комментировать
Нравится 1 Комментировать
import tkinter as tk from tkinter import filedialog as fd root = tk.Tk() # пустое родительское окно root.withdraw() # прячем его result = fd.askdirectory( master=root, # диалогу нужно родительское окно, путь даже невидимое. mustexist=True) # только существующие каталоги root.destroy() # уничтожаем родительское окно print(type(result), repr(result)) # result будет содержать путь или пустую строку при отмене
Ответ написан более года назад
Комментировать
Нравится 1 Комментировать
Как в python сделать случайный выбор, но с определенной вероятностью?
Здравствуйте.
Есть список: list = [q1, q2, q3]
Надо выбрать из этого списка одно значение (типа random.choice(list), но чтобы с разной вероятностью для выбора. К примеру с вероятностями:
q1 = 0.2
q2 = 0.3
q3 = 0.5
Возможно ли это? Если да, то как можно сделать?
- Вопрос задан более трёх лет назад
- 5882 просмотра
Комментировать
Решения вопроса 5
Есть еще random.choices. В параметре weights как раз указываются веса каждого значения.
values = [q1, q2, q3] data = random.choices(values, weights=[0.2, 0.3, 0.5], k=1000)
Ответ написан более трёх лет назад
Комментировать
Нравится 2 Комментировать
Yupiter7575 @yupiter7575
Выбор случайного элемента из списка в Python
В процессе программирования на Python очень часто возникает необходимость выбрать случайный элемент из списка. Это может быть полезно во множестве ситуаций, например, при разработке игры, где требуется случайным образом выбрать одного из персонажей, или в ситуации, когда надо случайным образом выбрать один из возможных вариантов ответа.
Рассмотрим пример. Пусть имеется список фруктов:
fruits = ['яблоко', 'банан', 'апельсин', 'груша', 'киви']
Необходимо выбрать один фрукт из этого списка случайным образом. Это можно сделать с помощью встроенного в Python модуля random . Этот модуль содержит множество функций для генерации случайных чисел, выбора случайных элементов из последовательностей и т.д.
Одна из функций этого модуля, которая нам пригодится, называется choice() . Эта функция принимает на вход список (или другую последовательность) и возвращает один из его элементов, выбранный случайным образом.
Вот как можно использовать эту функцию для выбора случайного фрукта из списка:
import random fruits = ['яблоко', 'банан', 'апельсин', 'груша', 'киви'] random_fruit = random.choice(fruits) print(random_fruit)
При каждом запуске этого кода в консоль будет выводиться случайно выбранный фрукт из списка.
Таким образом, выбор случайного элемента из списка в Python можно осуществить очень просто и быстро с помощью функции choice() из модуля random . Это позволяет значительно облегчить и ускорить процесс разработки программ, в которых требуется работать со случайными элементами последовательностей.