- 1
for smth in filter(None, [something]): do(smth)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−94
for smth in filter(None, [something]): do(smth)
лопата
+124
##### curl #####
GET /api/4dabd7b3816......97 HTTP/1.1
User-Agent: curl/7.21.0 (i686-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
Host: deepbit.net
Accept: */*
HTTP/1.1 302 Found
Cache-Control: no-cache
Content-length: 0
Location: /api/4dabd7b3816......97
Set-Cookie: *********pRd; path=/;
Connection: close
##### curl #####
##### wget #####
GET /api/4dabd7b3816......97 HTTP/1.0
User-Agent: Wget/1.12 (linux-gnu)
Accept: */*
Host: deepbit.net
Connection: Keep-Alive
HTTP/1.1 200 OK
Server: nginx/1.0.0
Date: Mon, 30 May 2011 06:45:14 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Cache-Control: no-cache, must-revalidate
Last-Modified: Mon, 30 May 2011 06:45:14 GMT
Expires: Mon, 30 May 2011 06:46:14 GMT
Content-Length: 413
{data data data}
##### wget #####
+163
class AnotherDammLoggerClass {
public:
// ...
static inline char *strtime()
{
// method is twice as fast as strftime)
static const int ASCII_OFFSET=48;
static char buffer[32]="";
struct timeval tv;
struct tm *lt;
if ( 0 == gettimeofday(&tv,NULL) )
{
lt=localtime(&tv.tv_sec);
int i=0;
/* year */
buffer[i++]=(lt->tm_year%100/10)+ASCII_OFFSET;
buffer[i++]=(lt->tm_year%10)+ASCII_OFFSET;
/* month */
buffer[i++]=((lt->tm_mon+1)/10)+ASCII_OFFSET;
buffer[i++]=((lt->tm_mon+1)%10)+ASCII_OFFSET;
/* day */
buffer[i++]=(lt->tm_mday/10)+ASCII_OFFSET;
buffer[i++]=(lt->tm_mday%10)+ASCII_OFFSET;
/* separator */
buffer[i++]='.';
/* hours */
buffer[i++]=(lt->tm_hour/10)+ASCII_OFFSET;
buffer[i++]=(lt->tm_hour%10)+ASCII_OFFSET;
/* minutes */
buffer[i++]=(lt->tm_min/10)+ASCII_OFFSET;
buffer[i++]=(lt->tm_min%10)+ASCII_OFFSET;
/* seconds */
buffer[i++]=(lt->tm_sec/10)+ASCII_OFFSET;
buffer[i++]=(lt->tm_sec%10)+ASCII_OFFSET;
/* separator */
buffer[i++]='.';
/* microseconds */
buffer[i++]=(((tv.tv_usec)%1000000)/100000)+ASCII_OFFSET;
buffer[i++]=(((tv.tv_usec)%100000)/10000)+ASCII_OFFSET;
buffer[i++]=(((tv.tv_usec)%10000)/1000)+ASCII_OFFSET;
buffer[i++]=(((tv.tv_usec)%1000)/100)+ASCII_OFFSET;
buffer[i++]=(((tv.tv_usec)%100)/10)+ASCII_OFFSET;
buffer[i++]=(((tv.tv_usec)%10))+ASCII_OFFSET;
/* delimiter */
buffer[i++]=(char)0;
}
else
{
strcpy(buffer, "<no time>");
}
return buffer;
}
// ....
}
оптимизируем производительность. коммент "twice as fast as strftime" порадовал: вместо того что бы редундантные вызовы поубирать, давайте ручками перепишем. для пущей красоты сделано inline (и еще скапипазджено в три других места проекта).
потому что в логгере strftime() наверное жутко тормозил - например по сравненю с записью сообщений на диск.......
+160
// There is an error while creating thumbnail in m or in s or in l
if ($creatingSError || $creatingMError || $creatingLError) {
// if all or two errors appear, we only display the last error message
// because the errors in this case is the same
if ($errorMsgS != '') {
$creatingError = $errorMsgS;
}
if ($errorMsgM != '') {
$creatingError = $errorMsgM;
}
if ($errorMsgL != '') {
$creatingError = $errorMsgL;
} // because the errors in this case is the same
$returnFrontMessage = $creatingError;
} else if ($errorMsgS == '' && $errorMsgM == '' && $errorMsgL == '') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == '' && $errorMsgM == '' && $errorMsgL == 'ThumbnailExists') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == '' && $errorMsgM == 'ThumbnailExists' && $errorMsgL == 'ThumbnailExists') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == '' && $errorMsgM == 'ThumbnailExists' && $errorMsgL == '') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == 'ThumbnailExists' && $errorMsgM == 'ThumbnailExists' && $errorMsgL == '') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == 'ThumbnailExists' && $errorMsgM == '' && $errorMsgL == '') {
$returnFrontMessage = 'Success';
} else if ($errorMsgS == 'ThumbnailExists' && $errorMsgM == '' && $errorMsgL == 'ThumbnailExists') {
$returnFrontMessage = 'Success';
}
Модуль phocagallery для joomla. Кусок кода в функции генереции превьюшек 3х разных размеров.
+134
<h1 style="padding: 0" class="PageName">Информация для пассажира</h1>
<div class="cont"><!-- p><b>Уважаемые пользователи!<br /></b>Извините, сервис продажи билетов временно приостановлен - на сервере проводятся регламентные работы. Попробуйте зайти позднее или приобрести билеты в кассах.</p>
<hr / -->
Продолжая тему РЖД
+146
function hsl2rgb($h, $s, $v) {
if($s == 0) { //если насыщенность цвета равно 0, то мы имеем дело с оттенком серого код которого и вычисляем умножая на 255
$r = $g = $b = $v * 255;
} else {
$var_H = $h * 6;
$var_i = floor( $var_H );
$var_1 = $v * ( 1 - $s );
$var_2 = $v * ( 1 - $s * ( $var_H - $var_i ) );
$var_3 = $v * ( 1 - $s * (1 - ( $var_H - $var_i ) ) );
if ($var_i == 0) { $var_R = $v ; $var_G = $var_3 ; $var_B = $var_1 ; }
elseif ($var_i == 1) { $var_R = $var_2 ; $var_G = $v ; $var_B = $var_1 ; }
elseif ($var_i == 2) { $var_R = $var_1 ; $var_G = $v ; $var_B = $var_3 ; }
elseif ($var_i == 3) { $var_R = $var_1 ; $var_G = $var_2 ; $var_B = $v ; }
elseif ($var_i == 4) { $var_R = $var_3 ; $var_G = $var_1 ; $var_B = $v ; }
else { $var_R = $v ; $var_G = $var_1 ; $var_B = $var_2 ; }
$r = $var_R * 255;
$g = $var_G * 255;
$b = $var_B * 255;
}
return array($r, $g, $b);
}
+147
static int getSign(final int num) {
return (num < 0) ? -1 : (num > 0) ? 1 : 0;
}
лисапед, бо есть Math.signum()
+158
if ($result === false) {
$result = $translated;
}
if ($result === false){
$result = $translated;
}
Magento. Так работают переводы.
+163
if(empty($value)) {
$empty_colls++;
$value = $value = str_replace(" ", "", $value);
} else {
$haystack=mb_convert_encoding($format_value, 'UTF-8', mb_detect_encoding($format_value));
$needle=mb_convert_encoding('грн', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency='грн';
else {
$needle=mb_convert_encoding('€', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency= '€';
else {
$needle=mb_convert_encoding('$USD', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency='USD';
}
}
$value = mb_convert_encoding($value,"UTF-8", mb_detect_encoding($value));
...
}
Даже не знаю с чего больше смеяться/плакать (исходники в UTF-8) :-)
+164
if (is_array($custom_data)) {
foreach ($custom_data as $key => $val) {
$session[$key] = $val;
}
}
хитрый план