d_skat

sem7_1

Apr 23rd, 2018
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.76 KB | None | 0 0
  1. import string
  2.  
  3.  
  4. def strings(filename, min_str_len=4):
  5.     min_len = max(min_str_len, 0)
  6.     current_line = ''
  7.     good = bytes(string.printable, 'ascii')
  8.     with open(filename, "rb") as file:
  9.         while True:
  10.             line = file.read(512)
  11.             if not line:
  12.                 break
  13.             for byte in line:
  14.                 if byte in good:
  15.                     current_line += chr(byte)
  16.                 else:
  17.                     if(len(current_line) > min_len):
  18.                         yield current_line
  19.                     current_line = ''
  20.             if (len(current_line) > min_len):
  21.                 yield current_line
  22.             current_line = ''
  23.     if (len(current_line) > min_len):
  24.         yield current_line
  25.     current_line = ''
Advertisement
Add Comment
Please, Sign In to add comment