>>> a = "1,2"
>>> a
'1,2'
>>> b = a.split(",")
>>> b
['1', '2']
Разбор CSV-файла:
f = open(file.csv, "r")
lines = f.read().split("\n") # "\r\n" if needed
for line in lines:
if line != "": # add other needed checks to skip titles
cols = line.split(",")
print cols
JBossAOP и AspectJ являются двумя наиболее часто используемыми, зрелыми платформами для AOP. Другим популярным выбором является AOP Spring, но это испытывает недостаток в некоторых функциях других двух.
И JBossAOP и AspectJ имеют подобные функции, одна большая разница, являющаяся, что AspectJ полагается на расширения языка Java, тогда как AOP JBoss не делает.
, Если Ваши требования AOP довольно просты, это также достойно рассмотрения библиотека управления байт-кода, такой как ASM. Я использовал ASM для реализации простой 'вокруг совета' (т.е., код, который введен прежде и после вызовов метода), и это оказалось более легкой альтернативой JBossAOP. ASM чисто разработан и хорошо зарегистрирован.
Я сказал бы AspectJ. Части IDE, насколько я знаю, недостает, но документация и выразительность среди лучших из платформ AOP, которые я видел.
Если Вы уже используете Spring, управляемые obejects уже имеют поддержка AOP . Пока не совсем столь же гибкий как AspectJ, это не требует шага перед компиляцией, который делает AspectJ.
Относительно поддержки AOP Spring. По умолчанию это важно только для управляемых объектов Spring и AFAIK он на основе AspectJ.
я один еще не проверял его, но похоже, что это позволяет AOP использования и для других объектов (например, время загрузки, переплетаясь под Tomcat). Детали здесь .