#!/usr/bin/python3 import sys import string def file_is_printable(file_): result = True for lineno, line in enumerate(file_): for char in line: if char not in string.printable: sys.stderr.write('line # {} has unprintable characters\n'.format(lineno + 1)) result = False return result def main(): if sys.argv[1:]: for filename in sys.argv[1:]: with open(filename) as file_: if not file_is_printable(file_): sys.exit(1) sys.exit(0) else: if not file_is_printable(sys.stdin): sys.exit(1) sys.exit(0) main()