-
Лучший говнокод
- В номинации:
-
- За время:
-
-
0
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
# Python 2.7
import cgi
print(cgi.parse_qs('a=bagor;+kakoi'))
# {'a': ['bagor']}
# Python 3.7.3
import urllib.parse
print(urllib.parse.parse_qs('a=bagor;+kakoi'))
# {'a': ['bagor']}
# Python 3.9.10
import urllib.parse
print(urllib.parse.parse_qs('a=bagor;+kakoi'))
# {'a': ['bagor; kakoi']}
Что, блядь, это за хуета???
Переводил программу на Python3 и пол дня потратил в попытках понять почему блядь тесты сломались.
Какой-то петух завязался, на ';' сепаратор, который обрезается.
https://docs.python.org/3/library/urllib.parse.html
Changed in version 3.10: Added separator parameter with the default value of &. Python versions earlier than Python 3.10 allowed using both ; and & as query parameter separator. This has been changed to allow only a single separator key, with & as the default separator.
И у меня не 3.10, но да похуй.
Как мне теперь закостылять это говно, не меняя данные?
3_dar,
03 Февраля 2022
-
+6
- 1
Раскрытие покровов. Настя, облачные технологии и Настенька.
HACTEHbKA,
22 Августа 2021
-
+136
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
int file_exist (char *filename)
{
char s[200];
sprintf(s, "test -e %s", filename);
if (system(s) == 0){
return 1;
}else{
return 0;
}
}
http://stackoverflow.com/questions/3828192/checking-if-a-directory-exists-in-unix-system-call
rat4,
23 Декабря 2013
-
−29
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
calculateSomething(int n){
float* x = new float[n];
/*do smth*/
if ( /*validation*/ ) {
delete[] x;
return;
}
float* y = new float[n];
/*do smth*/
if ( /*validation*/ ) {
delete[] x;
delete[] y;
return;
}
float* z = new float[n];
/*next step*/
if ( /*smth goes wrong*/ ) {
delete[] x;
delete[] y;
delete[] z;
return;
}
/*more calculations with validation*/
delete[] x;
delete[] y;
...
/*more delete[]*/
return;
}
Принципиальная схема говногода, найденного на просторах сети.
interested,
26 Июня 2012
-
+66
- 1
- 2
- 3
- 4
$pr = array();
foreach ($params as $k => $v)
$pr[] .= urlencode($k).'='.urldecode($v);
$data = join('&', $pr);
http_build_query() для слабаков! Только велосипеды, только выстрел себе в ногу.
/netcat/admin/nc_adminnotice.class.php
telnet,
10 Августа 2012
-
+148
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
<?
$optSelect['10'] = ($_REQUEST['sort_count']=='10') ? 'selected' : '';
$optSelect['20'] = ($_REQUEST['sort_count']=='20') ? 'selected' : '';
$optSelect['50'] = ($_REQUEST['sort_count']=='50') ? 'selected' : '';
$optSelect['all'] = ($_REQUEST['sort_count']=='all') ? 'selected' : '';
$remParams = array('sort_count');
//функция GetCurPageParam в битрикс возвращает путь к текущей странице с добавлением/удалением параметров (автор поста)
$optValueURI['10'] = $APPLICATION->GetCurPageParam('sort_count=10', $remParams);
$optValueURI['20'] = $APPLICATION->GetCurPageParam('sort_count=20', $remParams);
$optValueURI['50'] = $APPLICATION->GetCurPageParam('sort_count=50', $remParams);
$optValueURI['all'] = $APPLICATION->GetCurPageParam('sort_count=all', $remParams);
$optValue['10'] = $siteURL . $optValueURI['10'];
$optValue['20'] = $siteURL . $optValueURI['20'];
$optValue['50'] = $siteURL . $optValueURI['50'];
$optValue['all'] = $siteURL . $optValueURI['all'];
?>
<select onChange="location=this.value">
<option <?=$optSelect['10']?> value="<?=$optValue['10']?>">10</option>
<option <?=$optSelect['20']?> value="<?=$optValue['20']?>">20</option>
<option <?=$optSelect['50']?> value="<?=$optValue['50']?>">50</option>
<option <?=$optSelect['all']?> value="<?=$optValue['all']?>">Все</option>
</select>
Реализация Селекта количества выводимых элементов на странице. Сайт делал топовый партнёр 1c-Bitrix.
Я думаю, что разумнее было бы сделать так:
$arPages = array(10, 20, 50, 'all');
foreach ($arPages as $page) {?>
<option <?if($page == $_REQUEST['sort_count']){?>selected<?}?>>$page</option>
<?}?>
Ну и для сабмита можно какую нибудь нормальную функцию в JS написать.
Cool-Di,
26 Ноября 2010
-
−3
- 1
- 2
- 3
- 4
- 5
- 6
https://habr.com/ru/post/465553/
А правда, почему компилятор C++ позволяет писать такую хуету
x+= x++ + ++x;
x^=y^=x^=y;
?
IIIyqpymuHckuu_nemyx,
03 Сентября 2019
-
−1
- 1
- 2
- 3
class Govno {
virtual void govno() = 0;
};
Откуда такой дурацкий синтаксис? ))
Прочитал у страуса, джва дня смеюсь.
Может кто-то знает причину?
vistefan,
19 Ноября 2018
-
+159
- 1
- 2
- 3
...
$ORDER_ID = urldecode(urldecode($_REQUEST["ORDER_ID"]));
...
битрикс :)
p0p,
02 Апреля 2015
-
+78
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
public void initializeMap() {
for(Point p: getPoints()) {
{
Address address = p.getAddress();
LatLng position = new LatLng(address.getLatitude(), address.getLongitude());
//...
} // (2)
for (Item item : items) {
Address address = item.getAddress();
LatLng position = new LatLng(address.getLatitude(), address.getLongitude());
//...
}
}
}
автору лень придумывать вменяемые имена переменных, для кода ниже. по сему, он просто оборачивает верний код в новый блок и вуаля - можно реюзать те самые имена.
не совсем уверен говнокод ли это, но как минимум это - глупо.
lowercase,
01 Апреля 2015