You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
defrgb(r, g, b):
"""Функция для преобразования цвета из RGB в HEX формат"""check=lambdax: 0ifx<0else255ifx>255elsexreturn ('{:02x}'*3).format(check(r), check(g), check(b)).upper()
print(rgb(255, 255, 255))
# FFFFFF
Измерение быстродействия других функций
importtimedeftime_of_function(func):
"""Функция для измерения быстродействия других функций"""start_time=time.time()
result=func()
execution_time=round(time.time() -start_time, 1)
print(f'Время выполнения функции {func.__name__}: {execution_time} с.')
returnresultdefsleep_one_sec():
time.sleep(1)
time_of_function(sleep_one_sec)
# Время выполнения функции sleep_one_sec: 1.0 с.
Конвертация арабских цифр в римские и наоборот
classRomanNumerals:
"""Класс-конвертор арабских цифр в римские и наоборот"""d= {'M': 1000, 'CM': 900, 'D': 500, 'CD': 400, 'C': 100, 'XC': 90,
'L': 50, 'XL': 40, 'X': 10, 'IX': 9, 'V': 5, 'IV': 4, 'I': 1}
@classmethoddefto_roman(cls, val):
ifval>3999:
return'The maximum number that can be written in Roman numerals is 3999'elifval<1:
return'The minimum number that can be written in Roman numerals is 1'd, res= {arabic: romanforroman, arabicincls.d.items()}, ''whileval>0:
ford_valind:
ifd_val<=val:
res+=d[d_val]
val-=d_valbreakreturnres@classmethoddeffrom_roman(cls, roman_num):
d, res=cls.d, 0roman_num=list(roman_num)
whileroman_num:
num=roman_num.pop(0)
ifnotroman_num:
res+=d[num]
else:
ifd[num] >=d[roman_num[0]]:
res+=d[num]
else:
res+=d[roman_num.pop(0)] -d[num]
returnresprint(RomanNumerals.to_roman(2008))
# MMVIIIprint(RomanNumerals.from_roman('MMVIII'))
# 2008
Быстрая проверка числа на простоту
frommathimportsqrtdefis_prime(n):
"""Функция для быстрой проверки числа на простоту"""ifn>1:
foriinrange(2, int(sqrt(n)) +1):
ifn%i==0:
returnFalseelse:
returnTrueelse:
returnFalseprint(is_prime(7))
# Trueprint(is_prime(9))
# False
Конвертер чисел из десятичной системы счисления в иные
defnumeral_system_converter(number, base=2):
"""Конвертер чисел из десятичной системы счисления в иные. Второй необязательный аргумент равен 2 (перевод в двоичную систему счисления)"""res=''whilenumber:
res+=str(number%base)
number//=basereturnres[::-1]
print(numeral_system_converter(25))
# 11001print(numeral_system_converter(25, 8))
# 31# Вариант с рекурсиейdefnumeral_system_converter(num, base=2):
digits="0123456789ABCDEF"ifnum<base:
returndigits[num]
else:
returnnumeral_system_converter(num//base, base) +digits[num%base]