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

Создайте программу «Фирма»

30.03.2024, 23:27. Показов 1297. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята помогите пожалуйста с заданием. Создайте программу «Фирма» Нужно хранить информацию о человеке: ФИО, телефон, рабочий email, название должности, номер кабинета, skype. Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для хранения информации.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.03.2024, 23:27
Ответы с готовыми решениями:

Создайте БД «Фирма»
Создайте БД «Фирма» , состоящую из полей «Фамилия», «Дата рождения», «Образование», «Должность», «Стаж работы». Заполните БД 5...

Как скачать программу с контроллера S300, который установила сторонняя фирма?
Здраствуйте. Имеется контроллер S300 D012 Di12. К нему подключенна карта памяти. Контроллер управляет насосом и двумя клапанами и...

программу прописал, не могу выполнить по варианту, Сколько лет доходов было меньше 1000, но больше 500 у.е? Когда фирма понесла наибольший убыток?
Program Pr_11; Type mas=array of real; Var k:integer; y: mas; s,sa:real; kol: integer; Function f(x:integer):real; Begin ...

7
3 / 3 / 0
Регистрация: 26.12.2023
Сообщений: 104
30.03.2024, 23:38  [ТС]
Получился вот такой код но с ошибками.
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
firm_data = {}
 
while True:
 
 print("1 - Добавить информацию о сотруднике")
 
print("2 - Удалить информацию о сотруднике")
 
print("3 - Найти информацию о сотруднике")
 
print("4 - Заменить информацию о сотруднике")
 
print("5 - Выйти")
 
choice = input("Выберите действие: ")
 
if choice == "1":
 
 fio = input("Введите ФИО: ")
 
phone = input("Введите телефон: ")
 
email = input("Введите email: ")
 
position = input("Введите название должности: ")
 
room = input("Введите номер кабинета: ")
 
skype = input("Введите skype: ")
 
firm_data[fio] = {
 
"Телефон": phone,
 
"Email": email,
 
"Должность": position,
 
"Кабинет": room,
 
"Skype": skype
 
}
 
elif choice == "2":
 
fio = input("Введите ФИО сотрудника для удаления: ")
 
if fio in firm_data:
 
del firm_data[fio]
 
print("Информация о сотруднике удалена.")
 
else:
 
print("Сотрудник не найден.")
 
elif choice == "3":
 
fio = input("Введите ФИО сотрудника для поиска: ")
 
if fio in firm_data:
 
print("Информация о сотруднике:")
 
for key, value in firm_data[fio].items():
 
print(f"{key}: {value}")
 
else:
 
print("Сотрудник не найден.")
 
elif choice == "4":
 
fio = input("Введите ФИО сотрудника для замены информации: ")
 
if fio in firm_data:
 
phone = input("Введите новый телефон: ")
 
email = input("Введите новый email: ")
 
position = input("Введите новую должность: ")
 
room = input("Введите новый номер кабинета: ")
 
skype = input("Введите новый skype: ")
 
firm_data[fio] = {
 
"Телефон": phone,
 
"Email": email,
 
"Должность": position,
 
"Кабинет": room,
 
"Skype": skype
 
}
 
print("Информация о сотруднике обновлена.")
 
else:
 
print("Сотрудник не найден.")
 
elif choice == "5":
 
break

выходит ошибка синтаксиса. см скрин. Подскажите как ее исправить, или что то нужно добавить, удалить? может есть другие варианты с кодом.
Миниатюры
Создайте программу «Фирма»  
0
3 / 3 / 0
Регистрация: 26.12.2023
Сообщений: 104
30.03.2024, 23:40  [ТС]
Еще вот такая выходит ошибка.
Миниатюры
Создайте программу «Фирма»  
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
31.03.2024, 08:16
Дайте угадаю: вы украли код из вордовского документа?

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
firm_data = {}
 
while True:
    print("1 - Добавить информацию о сотруднике")
    print("2 - Удалить информацию о сотруднике")
    print("3 - Найти информацию о сотруднике")
    print("4 - Заменить информацию о сотруднике")
    print("5 - Выйти")
    choice = input("Выберите действие: ")
    if choice == "1":
        fio = input("Введите ФИО: ")
        phone = input("Введите телефон: ")
        email = input("Введите email: ")
        position = input("Введите название должности: ")
        room = input("Введите номер кабинета: ")
        skype = input("Введите skype: ")
        firm_data[fio] = {
            "Телефон": phone,
            "Email": email,
            "Должность": position,
            "Кабинет": room,
            "Skype": skype
        }
    elif choice == "2":
        fio = input("Введите ФИО сотрудника для удаления: ")
0
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
31.03.2024, 09:55
Лучший ответ Сообщение было отмечено Catstail как решение

Решение

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
def get_name():
    return input('Введите ФИО: ')
 
def find_name(firm_data):
    name = get_name()
    res = name in firm_data
    if not res:
        print('Сотрудник не найден.')
    else:
        return name
 
def get_data():
    phone = input('Введите телефон: ')
    email = input('Введите email: ')
    position = input('Введите название должности: ')
    room = input('Введите номер кабинета: ')
    skype = input('Введите skype: ')
    return {
        'Телефон': phone,
        'Email': email,
        'Должность': position,
        'Кабинет': room,
        'Skype': skype
    }
 
def add_inform(firm_data):
    name = get_name()
    data = get_data()
    firm_data[name] = data
 
def del_inform(firm_data):
    name = find_name(firm_data)
    if name:
        del firm_data[name]
 
def find_inform(firm_data):
    name = find_name(firm_data)
    if name:
        return firm_data[name]
 
def replace_inform(firm_data):
    name = find_name(firm_data)
    if name:
        firm_data[name] = get_data()
 
def choosing_an_action():
    d = {
        1: ('1 - Добавить информацию о сотруднике', add_inform),
        2: ('2 - Удалить информацию о сотруднике', del_inform),
        3: ('3 - Найти информацию о сотруднике', find_inform),
        4: ('4 - Заменить информацию о сотруднике', replace_inform),
        5: ('5 - Выйти из программы', exit)
    }
    for prompt,f in d.values():
        print(prompt)
 
    k = int(input('Выберите действие: '))
    print(f'Выбрано действие {d[k][0].upper()}')
    return d[k][1]
 
firm_data = {}
data = {}
name = None
while True:
    print()
    action = choosing_an_action()
    if action == exit:
        exit(0)
    res = action(firm_data)
    print()
    if res:
        print(res)
    else:
        print(firm_data)
    print()
1
3 / 3 / 0
Регистрация: 26.12.2023
Сообщений: 104
31.03.2024, 10:08  [ТС]
Рыжий Лис, Вы угадали))))))))))). Спасибо Вам за помощь!

Добавлено через 7 минут
idealist, отличный код. Спасибо большое!
0
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
31.03.2024, 10:23
Лучший ответ Сообщение было отмечено Catstail как решение

Решение

Чуть подправил код:
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
def get_name():
    return input('Введите ФИО: ')
 
def find_name(firm_data):
    name = get_name()
    if name in firm_data:
        return name
    print('Сотрудник не найден.')
 
def get_data():
    phone = input('Введите телефон: ')
    email = input('Введите email: ')
    position = input('Введите название должности: ')
    room = input('Введите номер кабинета: ')
    skype = input('Введите skype: ')
    return {
        'Телефон': phone,
        'Email': email,
        'Должность': position,
        'Кабинет': room,
        'Skype': skype
    }
 
def add_inform(firm_data):
    name = get_name()
    data = get_data()
    firm_data[name] = data
 
def del_inform(firm_data):
    name = find_name(firm_data)
    if name:
        del firm_data[name]
 
def find_inform(firm_data):
    name = find_name(firm_data)
    if name:
        return firm_data[name]
 
def replace_inform(firm_data):
    name = find_name(firm_data)
    if name:
        firm_data[name] = get_data()
 
def choosing_an_action():
    d = {
        1: ('Добавить информацию о сотруднике', add_inform),
        2: ('Удалить информацию о сотруднике', del_inform),
        3: ('Найти информацию о сотруднике', find_inform),
        4: ('Заменить информацию о сотруднике', replace_inform),
        5: ('Выйти из программы', exit)
    }
    for k,v in d.items():
        print(f'{k}. {v[0]}')
 
    k = int(input('Выберите действие: '))
    print(f'Выбрано действие {d[k][0].upper()}')
    return d[k][1]
 
firm_data = {}
while True:
    print()
    action = choosing_an_action()
    if action == exit:
        exit(0)
    res = action(firm_data)
    print()
    if res:
        print(res)
    else:
        print(firm_data)
    print()
1
3 / 3 / 0
Регистрация: 26.12.2023
Сообщений: 104
31.03.2024, 10:26  [ТС]
idealist, спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.03.2024, 10:26
Помогаю со студенческими работами здесь

Создайте программу
Создайте программу, которая переводит число из одной заданной системы счисления в десятичную. Выполнение перевода должно происходить по...

Создайте программу
которая заполняет массив 6x7 числами по следующему правилу: 0 -1 -2 -3 -4 -5 -6 1 0 -1 -2 -3 -4 -5 2 1 0 -1 -2 -3 -4 3 2 1 0...

Создайте программу
Напишите программу. Массив чисел (размерность 100) заполнить случайными значениям (диапазон значений от -100 до +100) Вычислить сумму и...

Создайте Паскаль программу
Создайте Паскаль программу y= ((ln^3) x)/(ctg(x-3))

Создайте программу-переводчик
Создайте на языке Python программу - переводчик,которая запрашивает 5 служебных слов Python, и выводит их перевод и названия содержащих их...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru