[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci
This commit is contained in:
pre-commit-ci[bot] 2023-08-13 05:53:55 +00:00
parent b8b3b8c593
commit eedc5935ad

View File

@ -1,74 +1,77 @@
def octal_to_binary(octal:str) -> str: def octal_to_binary(octal: str) -> str:
"""
Convert an octal value to its binary equivalent
>>> octal_to_binary("")
Traceback (most recent call last):
...
ValueError: Empty string was passed to the function
>>> octal_to_binary("-")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("e")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary(8)
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("-e")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("-8")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("1")
'0b1'
>>> octal_to_binary("-1")
'-0b1'
>>> octal_to_binary("12")
'0b1010'
>>> octal_to_binary(" 12 ")
'0b1010'
>>> octal_to_binary("-45")
'-0b100101'
>>> octal_to_binary("-")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("0")
'0b0'
>>> octal_to_binary("-4055")
'-0b100000101101'
>>> octal_to_binary("2-0Fm")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("")
Traceback (most recent call last):
...
ValueError: Empty string was passed to the function
>>> octal_to_binary("19")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
""" """
Convert an octal value to its binary equivalent
>>> octal_to_binary("")
Traceback (most recent call last):
...
ValueError: Empty string was passed to the function
>>> octal_to_binary("-")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("e")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary(8)
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("-e")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("-8")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("1")
'0b1'
>>> octal_to_binary("-1")
'-0b1'
>>> octal_to_binary("12")
'0b1010'
>>> octal_to_binary(" 12 ")
'0b1010'
>>> octal_to_binary("-45")
'-0b100101'
>>> octal_to_binary("-")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("0")
'0b0'
>>> octal_to_binary("-4055")
'-0b100000101101'
>>> octal_to_binary("2-0Fm")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
>>> octal_to_binary("")
Traceback (most recent call last):
...
ValueError: Empty string was passed to the function
>>> octal_to_binary("19")
Traceback (most recent call last):
...
ValueError: Non-octal value was passed to the function
"""
oct_string = str(octal).strip() oct_string = str(octal).strip()
if not oct_string: if not oct_string:
raise ValueError("Empty string was passed to the function") raise ValueError("Empty string was passed to the function")
is_negative = oct_string.startswith('-') is_negative = oct_string.startswith("-")
if is_negative: if is_negative:
oct_string = oct_string[1:] oct_string = oct_string[1:]
binary_num = '-0b' binary_num = "-0b"
else: else:
binary_num = '0b' binary_num = "0b"
if not oct_string.isdigit() or not all(0 <= int(char) <= 7 for char in oct_string): if not oct_string.isdigit() or not all(0 <= int(char) <= 7 for char in oct_string):
raise ValueError("Non-octal value was passed to the function") raise ValueError("Non-octal value was passed to the function")
binary_num += str(bin(int(oct_string, 8)))[2:] binary_num += str(bin(int(oct_string, 8)))[2:]
return binary_num return binary_num
if __name__ == "__main__": if __name__ == "__main__":
from doctest import testmod from doctest import testmod
testmod() testmod()