Я использую PyCharm и поддерживаю его до конца. Это стоило мне немного, но я должен сказать, что преимущество, которое я получаю от этого, бесценно. Я попробовал отладку с консоли, и я очень благодарен людям, которые могут это сделать, но для меня возможность визуальной отладки моих приложений - это замечательно.
Я должен сказать, что PyCharm действительно занимает много памяти. Но опять же, ничего хорошего в жизни не бывает бесплатным. Они только что вышли со своей последней версией 3. Она также очень хорошо работает с Django, Flask и Google AppEngine. В общем, я бы сказал, что это отличный удобный инструмент для любого разработчика.
Если вы еще не используете его, я рекомендую получить пробную версию на 30 дней, чтобы взглянуть на возможности PyCharm. Я уверен, что есть и другие инструменты, такие как Aptana. Но я думаю, мне просто нравится, как выглядит PyCharm. Я чувствую себя очень комфортно, отлаживая свои приложения там.
csv.reader ожидает итерацию. Вы дали ему "1, 2, 3, 4 \ n 5, 6, 7, 8 \ n"
; итерация производит символы. Попробуйте указать ему ["1, 2, 3, 4 \ n", "5, 6, 7, 8 \ n"] - итерация выдаст строки.
csv.reader
принимает итератор или итератор, возвращающий строки, см. документацию . Вы передаете ему строку, которая является итерацией, возвращающей отдельные символы.
Итак, используйте csv.reader (c.splitlines ())
или аналогичные конструкции!
Чтобы сделать его более похожим на файл, попробуйте следующее.
import StringIO
c= StringIO.StringIO( "1, 2, 3, 4\n 5, 6, 7, 8\n" )
Теперь c выглядит как файл. Файл - это то, что вы используете с csv большую часть (если не все) время.