mikhailemv

2.2

Dec 12th, 2022
668
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.23 KB | None | 0 0
  1. from csv import reader
  2. from re import sub
  3.  
  4.  
  5. def print_final_processed(current_dictionary: dict) -> None:
  6.     for column_name, column_intersection in current_dictionary.items():
  7.         processed_intersection = ', '.join(column_intersection)
  8.         processed_intersection = sub(r'\s+', ' ', processed_intersection)
  9.         print(f'{column_name}: {processed_intersection}')
  10.     print()
  11.  
  12.  
  13. def get_clean_string(current_string: str) -> str:
  14.     return sub(r'\<[^>]*\>', '', current_string).strip()
  15.  
  16.  
  17. csv_file = open(input(), encoding='utf_8_sig')
  18. csv_reader, all_data_list = reader(csv_file), list()
  19.  
  20. for current_data in csv_reader:
  21.     all_data_list.append(current_data)
  22.  
  23. columns, all_data = all_data_list[0], all_data_list[1:]
  24. first_result, second_result = list(), list()
  25.  
  26. for current_data in all_data:
  27.     if len(current_data) == len(columns) and \
  28.             not current_data.__contains__(''):
  29.         first_result.append(current_data)
  30.  
  31. for string in first_result:
  32.     dictionary, counter = dict(), 0
  33.     for word in string:
  34.         dictionary[columns[counter]] = get_clean_string(word).split('\n')
  35.         counter += 1
  36.     second_result.append(dictionary)
  37.  
  38. for string in second_result:
  39.     print_final_processed(string)
  40.  
Advertisement
Add Comment
Please, Sign In to add comment