Обработка списка
Есть реальный список row:
row=['1101516021', '0', '1', '', 'TTT', 'ppp', '997476042736', '', '20150320092249', '20150320092249', '1', '1', '110', '', '', '00', '22', '', '999470000032', '40711569', '', '1', '0']
Его необходимо инсертить в БД. Но перед инсертом обработать так:
row[8]="to_date('"+row[8]+"','yyyymmddhh24miss')"
row[9]="to_date('"+row[9]+"','yyyymmddhh24miss')"
row[3]="'"+row[3]+"'"
row[4]="'"+row[4]+"'"
row[5]="'"+row[5]+"'"
row[6]="'"+row[6]+"'"
row[7]="'"+row[7]+"'"
row[11]="'"+row[11]+"'"
row[12]="'"+row[12]+"'"
row[13]="'"+row[13]+"'"
row[14]="'"+row[14]+"'"
row[15]="'"+row[15]+"'"
row[16]="'"+row[16]+"'"
row[17]="'"+row[17]+"'"
row[18]="'"+row[18]+"'"
row[19]="'"+row[19]+"'"
row[0]="0"+row[0]
row[1]="0"+row[1]
row[2]="0"+row[2]
row[10]="0"+row[10]
row[20]="0"+row[20]
row[21]="0"+row[21]
row[22]="0"+row[22]
Получилось очень громоздко и некрасиво. А хотелось что-то типа
row[3,4,5,6,7,11,12,13,14,15,16,17,18,19]= ["'"+x+"'" for x in row[3,4,5,6,7,11,12,13,14,15,16,17,18,19]]
Но, к сожалению, в питоне так писать нельзя.
Источник: Stack Overflow на русском