Shift decimal point in Python

Shifting Right

def shift_decimal_right(number_str, places):
if '.' in number_str:
integer_part, fractional_part = number_str.split('.')
number_str = integer_part + fractional_part
return number_str + '0' * places
 shifted_number = shift_decimal_right("123.45", 2)
print(shifted_number)  
Output: "1234500"

Shifting Left

def shift_decimal_left(number_str, places):
if '.' in number_str:
integer_part, fractional_part = number_str.split('.')
number_str = integer_part + fractional_part
else:
fractional_part = ''
number_str = '0' * (places - len(number_str)) + number_str
new_position = len(number_str) - places
return number_str[:new_position] + '.' + number_str[new_position:]
 shifted_number = shift_decimal_left("123.45", 2)
print(shifted_number)
 Output: "1.2345"

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top