Генерация html-таблицы из списка в python

#python #html #html-lists #html-table

#python #HTML #html-списки #html-таблица

Вопрос:

В настоящее время у меня есть список данных:

     list = [('ALCOA INC. CDI', 66.0), ('RIO TINTO LIMITED', 29.210000000000001), ('PLACER DOME INC CDI', 18.030000000000001), ('GUNNS LIMITED', 11.609999999999999), ('ORICA LIMITED', 10.83)] 
  

это то, что генерируется из моего кода, и я хочу поместить это в html-таблицу, в настоящее время я могу заставить его вводить в таблицу только название компании, когда я пытаюсь ввести цифры, это просто не работает.

     print '    <table border = "1" cellpadding = "1" cellspacing = "0">'
    print '         <tr>'
    for i in list:
        print '        <td>' i[1] '</td>' #here is where i've tried to only input the numbers, but output isn't working.
    print '            </td>'
    print '        </tr>'
    print '    </table>'
  
 TypeError: cannot concatenate 'str' and 'float' objects
  

Я действительно не понимаю, как мне следует решать эту проблему.

Ответ №1:

Вы не можете объединить типы string и float, вам нужно преобразовать float в строку:

print ' <td>' str(i[1]) '</td>'

http://ideone.com/I0LJV

Ответ №2:

или

 print '        <td>%.2f</td>' % i[1]
  

если вы хотите напечатать целую часть плюс 2 десятичных знака

http://docs.python.org/library/stdtypes.html#string-formatting-operations