Задача: Пьяный питон

Python напился, и встроенные функции str() и int() ведут себя странно:

str(4) ➞ 4

str("4") ➞ 4

int("4") ➞ "4"

int(4) ➞ "4"

Вам нужно создать две функции, которые заменят str() и int(): функцию int_to_str(), которая преобразует целые числа в строки, и функцию str_to_int(), которая преобразует строки в целые числа.

Пример:

int_to_str(4) ➞ "4"

str_to_int("4") ➞ 4

int_to_str(29348) ➞ "29348"

Примечание:

Эта задача призвана проиллюстрировать опасность использования уже существующих имен функций.

Варианты решений:

str, int = int, str

def int_to_str(n):
	return str(n)

def str_to_int(s):
	return int(s)
def int_to_str(num):
	return int(num)
		
def str_to_int(num):
	return str(num)
def int_to_str(num):
	return "{}".format(num)

def str_to_int(num):
	return eval(num)
def str_to_int(num_str):
	num = 0
	for char in num_str:
        	num *= 10
        	num += ord(char) - ord('0')
	return num

def int_to_str(num_int):
	word = ""
	while num_int:
		word = chr(ord('0') + num_int % 10) + word
        	num_int //= 10
	return word or "0"

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *