Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 27.07.2022
Сообщений: 44

Как сделать красивее?

31.07.2022, 22:28. Показов 993. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Постараюсь объяснить кратко.
Вот часть кода:
Python
1
2
3
4
5
print("Введите действие которое хотите совершить:",
    "1. Создать новую матрицу",
    "2. Просмотреть имеющиеся матрицы",
    "3. Умножить матрицы",
    sep="\n")
Мне бы не хотелось писать что-нибудь по типу:
Python
1
2
3
4
5
6
7
a = int(input())
if(a==1):
    func1()
elif(a==2):
    func2()
else:
    func3
Для того, чтобы понять, что хочет сделать "пользователь"(хотя я всего лишь учусь))).Слишком уж некрасиво.
Можно ли сделать так, чтобы было:
func1 если введено 1
func2 если введено 2
и т.д.
Не вводить переменную, а сразу выполнить действие соответствующие введённой цифре?
Я уже видел конструкции по типу:
Python
1
print(1 if 1==2 else 3)
Которые выглядят весьма элегантно.
Поэтому и надеюсь найти способ сделать всё красиво и здесь.

Добавлено через 22 минуты
Вариант
c = input("траляля")
тоже выглядит как-то не очень.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.07.2022, 22:28
Ответы с готовыми решениями:

Сделать код "красивее"
Вот такая задача: Написал вот такой код: def lucky_sum(a, b, c): sum = 0 if a != 13: sum += a if b != 13 and a...

Как сделать код красивее?
Здравствуйте, в js код красивый и понятный Поля tasks и project большие и там много данных, я их опустил здесь let unDoneTasks; ...

Как сделать кнопки красивее?
Есть элемент ToolBar, на нем у меня находится несколько кнопок, посоветуйте как сделать их не просто кнопками, а кнопками с картинкой ?...

5
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
31.07.2022, 22:36
eval(f'func{input()}()')

Добавлено через 18 секунд
простите за мой французский
0
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
01.08.2022, 00:41
Лучший ответ Сообщение было отмечено alex150051 как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
def func_1():
    print('Выполнена функция 1')
 
 
def func_2():
    print('Выполнена функция 2')
 
 
def func_3():
    print('Выполнена функция 3')
 
 
def func_4():
    print('Введено неверное число.')
 
 
print("Введите действие которое хотите совершить:",
      "1. Создать новую матрицу",
      "2. Просмотреть имеющиеся матрицы",
      "3. Умножить матрицы",
      sep="\n")
 
d = {'1': func_1,
     '2': func_2,
     '3': func_3}
 
a = input()
d.get(a, func_4)()
3
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
01.08.2022, 01:02
Цитата Сообщение от alex150051 Посмотреть сообщение
Как сделать красивее?
Долгожданное продолжение от создателей "Как сделать быстрее?"
1
Эксперт Python
 Аватар для Red white socks
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
01.08.2022, 07:08
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
print("Введите действие которое хотите совершить:",
    "1. Создать новую матрицу",
    "2. Просмотреть имеющиеся матрицы",
    "3. Умножить матрицы",
    sep="\n")
 
match input():
    case "1":
        f1()
    case "2":
        f2()
    case "3":
        f3()
    case _:
        default()
3
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,707
Записей в блоге: 14
03.08.2022, 08:14
Еще вариант:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def f1():
    print("f1")
    
def f2():
    print("f2")
    
def f3():
    print("f3")
  
def main():
    lst=(f1,f2,f3)
    k=int(input("Номер действия (1-3): "))
    if 1<=k<=3:
        lst[k-1]()
    else:
        print("Error!")
    
main()
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.08.2022, 08:14
Помогаю со студенческими работами здесь

Как сделать программу красивее?
Вот написал программу на Java, и хочу штоб внешне она выглядела немного получше, вот только не знаю как можно пристроить в программу што то...

Как сделать код красивее?
///Graph's class Graph = class public ///Set of all edges Edges: set of GEdge; private pS, pS2: Style;...

Как это можно сделать красивее?
uint8_t sommomd = 0x55; uint16_t u16Temp = 0; u16Temp = GPIO_ReadOutputData(GPIOA)&amp;0xFF00; u16Temp |= sommomd; GPIO_Write(GPIOA,...

Как сделать красивый советский автомобиль ещё красивее
Как сделать красивый советский автомобиль ещё красивее. Москвич АЗЛК-2140 SL после компьютерного улучшайзинга

Как можно сделать рамку вокруг таблицы красивее и объемнее
Есть таблица .tg {border-collapse:collapse;border-spacing:0; width:100%; cellpadding:15 px; cellspacing:3; border-radius:15px;} .tg...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru