import sys
def main():
for filename in sys.argv[1:]:
try:
do_some_stuff(filename)
except Exception as err:
print(f"trouble with '{filename}': Error: {err}")
def do_some_stuff(filename):
with open(filename) as fh:
total = 0
count = 0
for line in fh:
number = float(line)
total += number
count += 1
print("Average: ", total/count)
main()
23
1
192
17
1
2
3
4
5
6
$ python average_from_files.py number_per_line.txt empty.txt number_per_line2.txt
Average: 58.25
trouble with 'empty.txt': Error: division by zero
Average: 3.5
$ python average_from_files.py numbers.txt
trouble with 'numbers.txt': Error: could not convert string to float: '23 345 12345\n'
$ python average_from_files.py more_numbers.txt
trouble with 'more_numbers.txt': Error: [Errno 2] No such file or directory: 'more_numbers.txt'