Вы можете попробовать что-то вроде этого:
f = input("Enter Temperature in Fahrenheit: ");
fah = float(f);
cel = (fah-32)/1.8;
print("Temperature in Celsius =",cel);
К сожалению, это не возможно, но существует много способов приблизить ответ:
для очень простых объектов (например, ints, строки, плавания, удваиваются), которые представлены более или менее, поскольку простой язык C вводит Вас, может просто вычислить число байтов как с решение .
John Mulder Для более сложных объектов, которые хорошее приближение должно сериализировать объект к строке с помощью cPickle.dumps. Длина строки является хорошим приближением объема памяти, требуемого хранить объект.
существует одно большое препятствие с решением 2, которое является, что объекты обычно содержат ссылки на другие объекты. Например, dict содержит строковые ключи и другие объекты как значения. Те другие объекты могли бы быть совместно использованы. Так как рассол всегда пытается сделать полную сериализацию объекта, это будет всегда переоценивать объем памяти, требуемый хранить объект.
ОБНОВЛЕНИЕ: Вот другой , возможно, более полный рецепт для оценки размера объекта Python.
Вот поток рассматривание подобного вопроса
, предложенное решение состоит в том, чтобы записать Вашему собственному... использование некоторых оценок известного размера примитивов, объект Python наверху и размеры созданных в контейнерных типах.
, Так как код не то, что долго, вот прямая копия его:
def sizeof(obj):
"""APPROXIMATE memory taken by some Python objects in
the current 32-bit CPython implementation.
Excludes the space used by items in containers; does not
take into account overhead of memory allocation from the
operating system, or over-allocation by lists and dicts.
"""
T = type(obj)
if T is int:
kind = "fixed"
container = False
size = 4
elif T is list or T is tuple:
kind = "variable"
container = True
size = 4*len(obj)
elif T is dict:
kind = "variable"
container = True
size = 144
if len(obj) > 8:
size += 12*(len(obj)-8)
elif T is str:
kind = "variable"
container = False
size = len(obj) + 1
else:
raise TypeError("don't know about this kind of object")
if kind == "fixed":
overhead = 8
else: # "variable"
overhead = 12
if container:
garbage_collector = 8
else:
garbage_collector = 0
malloc = 8 # in most cases
size = size + overhead + garbage_collector + malloc
# Round to nearest multiple of 8 bytes
x = size % 8
if x != 0:
size += 8-x
size = (size + 8)
return size