Python — передача элементов из списка в виде столбцов для метода pandas read_csv

#python #pandas #csv #cgi

Вопрос:

Я хочу преобразовать в один html-файл несколько значений, которые вводятся из веб-формы. Это код, который у меня есть прямо сейчас

 formData = cgi.FieldStorage()
my_file = formData.getvalue("my_filename")
my_col = formData.getlist("column")

print(my_col) #list

for item in my_col:
    csvdata = pandas.read_csv(my_file, usecols=[item])

#cd = csvdata.to_html()
#...
 

Очевидно, что это преобразует в html только последний элемент в списке. Как я могу преобразовать каждый элемент в списке my_col в один html-файл?

Ответ №1:

Вы получаете только последний элемент, потому что проходите по циклу my_cols . Вам не нужно этого делать, вместо этого отправьте все list my_cols usecols следующим образом, и вы получите желаемый результат.

 
formData = cgi.FieldStorage()
my_file = formData.getvalue("my_filename")
my_col = formData.getlist("column")

print(my_col) #list

csvdata = pandas.read_csv(my_file, usecols=my_col)