Предполагая, что ваши значения разделены пробелом, вы можете прочитать в своем файле список кортежей, используя:
# generator to read file and return each line as a list of values
pairs = (line.split() for line in open("x.txt"))
# use list comprehension to produce a list of tuples
fruits = [(name, float(price)) for name, price in pairs]
print fruits
# will print [('apples', 1.23), ('pears', 231.23), ('guava', 12.3)]
Обратите внимание, что float()
использовалось для преобразования второго значения (price
) из str в число с плавающей запятой.
См. Также: понимание списка и выражение генератора .
Чтобы упростить поиск цен на каждый фрукт, вы можете преобразовать свой список кортежей в диктовку:
price_lookup = dict(fruits)
print price_lookup["apples"]
# will print 1.23
print price_lookup["guava"] * 2
# will print 24.6
См .: dict()
.