sum_ = 0 for line in open(r'd:\Python\file.txt', 'r'): sum_ += int(line.strip()) print sum_
odnochlenумничка
sum_ = 0
odnochlenлучше использовать with open(…) - оно закроет хендл файла по выходу
for line in open(r'd:\Python\file.txt', ‘r’):
sum_ = reduce(lambda x, y: int(x) + int(y), open(path_to_file))
dimy44файлы все-таки лучше закрывать )
open(path_to_file)
dimy44Не зря Guido подальше reduce запрятал, если уж нравится функциональный стиль, зачем усложнять?
sum_ = reduce(lambda x, y: int(x) + int(y), open(path_to_file))
with open("file.txt") as f: total = sum(map(int, f))
dimy44На CPython проблем не будет, а вот на PyPy могут возникнуть.
В этом случае что закрывать? Ссылки на файловый объект нет.
reclosedevКонечно не будет - но это правило хорошего тона, открыл - закрой.
На CPython проблем не будет
reclosedevВ моем распоряжении сейчас только Python 2.2.2, там еще нет sum, пришлось так).
зачем
усложнять?