@@ -96,6 +96,21 @@ def all_columns(self, *args):
9696 except Exception as e :
9797 raise SuppressedError (type (e ).__name__ , str (e ), self .debug (print_d = False ))
9898
99+ def all_columns_with_list (self , list ):
100+ """
101+
102+ :param list: list
103+ :return: None
104+ """
105+ try :
106+ all_col_data = {'function' : 'all_columns' , 'data' : []}
107+ for value in list :
108+ all_col_data ['data' ].append (self .add_column (str (value ), all_cols = True ))
109+ self .functions .append (all_col_data )
110+ except Exception as e :
111+ raise SuppressedError (type (e ).__name__ , str (e ), self .debug (print_d = False ))
112+
113+
99114 def finalize_cols (self ):
100115 """
101116
@@ -110,7 +125,7 @@ def finalize_cols(self):
110125 except Exception as e :
111126 raise SuppressedError (type (e ).__name__ , str (e ), self .debug (print_d = False ))
112127
113- def add_row (self , show_warning_message = True , * args ):
128+ def add_row (self , * args , show_warning_message = True ):
114129 """
115130
116131 :param show_warning_message: bool
@@ -152,6 +167,48 @@ def add_row(self, show_warning_message=True, *args):
152167 except Exception as e :
153168 raise SuppressedError (type (e ).__name__ , str (e ), self .debug (print_d = False ))
154169
170+ def add_row_with_list (self , list , show_warning_message = True ):
171+ """
172+
173+ :param show_warning_message: bool
174+ :param list: list
175+ :return: None
176+ """
177+ try :
178+ if self .finalized_run :
179+ self .finalized_run = False
180+ if not self .finalized :
181+ self .finalize_cols ()
182+ self .finalized_run = True
183+ self .finalized = True
184+ add_row_data = {'function' : 'add_row' ,
185+ 'data' : {'finalized_run' : self .finalized_run ,
186+ 'show_warning_message' : show_warning_message ,
187+ 'values' : []}}
188+ self .rows += 1
189+ row = '|'
190+ rows_made = 0
191+ for i in range (int (len (list ))):
192+ row += '{}|' .format (str (list [i ]))
193+ rows_made += 1
194+ add_row_data ['data' ]['values' ].append (list [i ])
195+ if self .columns > rows_made :
196+ if show_warning_message :
197+ print (not_enough_values (rows_made , self .columns ))
198+ add_row_data ['data' ]['message_shown' ] = True
199+ for i in range (int (self .columns - rows_made )):
200+ row += ' |'
201+ # noinspection PyTypeChecker
202+ add_row_data ['data' ]['values' ].append ('{} blank values added' .format (str (self .columns - rows_made )))
203+ elif self .columns < rows_made :
204+ raise TooManyValues (self .columns )
205+ self .table += '\n {}' .format (row )
206+ self .functions .append (add_row_data )
207+ except TooManyValues :
208+ raise
209+ except Exception as e :
210+ raise SuppressedError (type (e ).__name__ , str (e ), self .debug (print_d = False ))
211+
155212 def export_table_to_file (self , filename = 'markdowntable' , extension = 'txt' , mode = 'w+' , overwrite_warning = True ):
156213 """
157214
0 commit comments