Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
3 / 3 / 0
Регистрация: 20.12.2021
Сообщений: 105

Барабан цветов

20.01.2022, 16:28. Показов 5127. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В файле flower_drum.txt находится информация о названиях цветов, их 16-ричных кодах и представлении в формате RGB – три числа для красной, зеленой и синей составляющей. Вот часть файла:
Хаки #806B2A 128 107 42
Хромовый зеленый #2E3A23 46 58 35
Цвет блошиного брюшка #4E1609 78 22 9
Цвет ВКонтакте #4D7198 77 113 152
Цвет влюбленной жабы #3CAA3C 60 170 60
Напишите функцию color_search() для работы с этим файлом. Функция может работать в трех режимах: принимать название цвета, его hex-код или кортеж из трех составляющих RGB, а выдавать остальные две характеристики. В именованном аргументе функции filename записывается имя выходного файла, по умолчанию output.txt.
Функция принимает произвольное количество аргументов одного типа – либо все аргументы – названия цветов, либо hex-коды, либо кортежи трех чисел. Для каждого запроса в порядке передачи в функцию записать в файл полученные значения через символ табуляции. Последовательность записи такая: если аргументы – названия, то в выходной файл пишется последовательность название, hex-код, r, g, b; если hex-код, то hex-код, r, g, b, название; если RGB, то r, g, b, название, hex-код.
Название цвета может состоять из нескольких слов через пробел.

Пример 1
Ввод:
color_search('#F13A13', '#00836E')

Вывод:
#F13A13 Яркий красно-оранжевый 241 58 19
#00836E Яркий синевато-зеленый 0 131 110

Пример 2
Ввод:
color_search('Блестящий желтый', 'Воды пляжа Бонди', 'Дыня Крайола', filename='out.txt')

Вывод:
Блестящий желтый #FFCF40 255 207 64
Воды пляжа Бонди #0095B6 0 149 182
Дыня Крайола #FDBCB4 253 188 180

Пример 3
Ввод:
color_search((245, 245, 245), (0, 100, 0), (116, 66, 200))

Вывод:
245 245 245 Дымчато-белый #F5F5F5
0 100 0 Травяной (Очень темный лимонный зеленый) #006400
116 66 200 Пурпурное сердце #7442C8
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.01.2022, 16:28
Ответы с готовыми решениями:

Инверсия цветов
Хочу что бы когда у меня нажата клавиша 2 - включается инверсия цветов на экране а когда нажимаю 3 - оно выключается. Как?

Букет цветов
Букет – это как минимум три цветка. Или больше. Помогите собрать букет. Формат ввода Вводится 4 строки. В первых трех названия...

Смена цветов
при нажатии на кнопку должен начать меняться цвет 4 раза, сами цвета я сделал рандомными. from tkinter import * import time import...

2
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
21.01.2022, 11:47
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
st = '''\
Хаки #806B2A 128 107 42
Хромовый зеленый #2E3A23 46 58 35
Цвет блошиного брюшка #4E1609 78 22 9
Цвет ВКонтакте #4D7198 77 113 152
Цвет влюбленной жабы #3CAA3C 60 170 60
Яркий красно-оранжевый #F13A13 241 58 19
Яркий синевато-зеленый #00836E 0 131 110
Блестящий желтый #FFCF40 255 207 64
Воды пляжа Бонди #0095B6 0 149 182
Дыня Крайола #FDBCB4 253 188 180
Дымчато-белый #F5F5F5 245 245 245
Травяной (Очень темный лимонный зеленый) #006400 0 100 0
Пурпурное сердце #7442C8 116 66 200'''
 
def color_search(*args):
    for arg in args:
        print(d[arg])
 
d = {}
for s in st.splitlines():
    color, hex_code, r, g, b = s.rsplit(maxsplit=4)
    d[color] = f'{hex_code} {color} {r} {g} {b}'
    d[hex_code] = f'{color} {hex_code} {r} {g} {b}'
    d[(int(r), int(g), int(b))] = f'{r} {g} {b} {color} {hex_code}'
 
 
color_search('#F13A13', '#00836E')
print()
color_search('Блестящий желтый', 'Воды пляжа Бонди', 'Дыня Крайола')
print()
color_search((245, 245, 245), (0, 100, 0), (116, 66, 200))
дальше сам
3
3 / 3 / 0
Регистрация: 20.12.2021
Сообщений: 105
22.01.2022, 19:43  [ТС]
eaa, извините, а как сделать, чтобы вывод такой был?(там пробелы между цифрами в разном кол-ве):
#F13A13 Яркий красно-оранжевый 241 58 19
#00836E Яркий синевато-зеленый 0 131 110
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.01.2022, 19:43
Помогаю со студенческими работами здесь

Барабан цветов
В файле flower_drum.txt находится информация о названиях цветов, их 16-ричных кодах и представлении в формате RGB – три числа для красной,...

Есть н цветов разных видов. Составьте все возможные сочетания букетов из всех этих цветов. Количество цветов и их названия вводит пользователь
Есть n цветов разных видов. Составьте все возможные сочетания букетов из всех этих цветов. Количество цветов и их названия вводит...

СМА Indesit WP1040TXR не крутит барабан, не крутит барабан
Собственно старая машина с командоаппаратом. Поменяны щетки двигателя (стерты в ноль)-дефект не ушел. После пропайки контактов релюшек...

СMA Hansa PC4580B423 не вращается барабан Е21, не вращается барабан Е21
СMA Hansa PC4580B423 не вращается барабан Е21 по кодам ошибок неисправность тахо или его цепей, проверил все: тахометр исправен,...

Задать два перечислимых типа: первый - коды цветов, второй - названия цветов
Задать два перечислимых типа: первый коды цветов, второй - названия цветов. Вводится имя цвета, выводится его тип. Помогите плз,...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
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-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru