- 1
- 2
Currently it's hard or even impossible to use hexadecimal literal constants that result in overflow of the corresponding signed types.
https://github.com/Kotlin/KEEP/blob/master/proposals/unsigned-types.md
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
Currently it's hard or even impossible to use hexadecimal literal constants that result in overflow of the corresponding signed types.
https://github.com/Kotlin/KEEP/blob/master/proposals/unsigned-types.md
какой пиздец!!!
−1
Возможно, вы разделите мою точку зрения насчёт того документа. Судите сами:
1. Это всё ещё Vue
2. Он закрывает основные потребности разработчиков
3. Разумеется, он избавляет от бойлерплейта
4. Документация — огонь
5. Большое, пассионарное сообщество
Спирт:
1. Его пьют
2. Вызывает эйфорию
3. Может использоваться в качестве жидкости
https://m.habr.com/ru/company/vdsina/blog/525382/
−1
ont = love.graphics.newFont("/font/RobotoMono-Regular.ttf",14);
love.graphics.setFont(font);
box = {
draw = false;
}
function box:cr(d,variant)
--self.draw = false;
self.d = d;
self.var = variant or {};
table.insert(self.var,">> Quit");
--table.insert(self.var,">> retry");
self.str = 0;
self.v = vector(0,(love.graphics.getHeight()/2)-150);
self.h = 300;
self.w = 800;
end
function box:up(dt)
end
function box:dr()
if self.draw then
love.graphics.setColor(0,0,0);
love.graphics.rectangle("fill",self.v.x,self.v.y,self.w,self.h);
love.graphics.setColor(1,1,1);
love.graphics.print(self.d,self.v.x,self.v.y);
love.graphics.print(self.str,self.v.x,self.v.y+20);
for k,v in pairs(self.var) do
if k == self.str then
--love.graphics.setColor(1,1,1);
love.graphics.draw(animmouse.img.RMB,self.v.x+font:getWidth(v),self.v.y+200+((k-1)*20))
love.graphics.setColor(1,1,0);
else
love.graphics.setColor(1,1,1);
end
love.graphics.print(v,self.v.x,self.v.y+200+((k-1)*20));
end
end
end
function box:mw(y)
if self.draw then
local lt = #self.var;
self.str = self.str - y;
if 1 > self.str then
self.str = lt;
elseif lt < self.str then
self.str = 1;
end
end
end
function box:mp(x,y,b)
if self.draw then
if b == 2 then
if self.str == #self.var then
self.draw = false
end
end
end
end
lalalalallallalalalalallallalalalalallal lalalalalallallalalalalallallalalalalall allalalalalallallalalalalallallalalalala llallalalalalallallalalalalallallalalala lallallalalalalallallalalalalallallalala lalallallalalalalallallalalalalallallala lalalallallalalalalallallalalalalallalla lalalalallallalalalalallallalalalalallal lalalalalallallalalalalallallalalalalall allalalalalallallalalalalallallalalalala llallalalalalallallalalalalallallalalala lallallalalalalallallalalalalallallalala lalallallalalalalallallalalalalallallala lalalallallalalalalallalla
−1
https://www.npmjs.com/package/mkdirp
https://www.npmjs.com/package/mkdirp2
https://www.npmjs.com/package/mkdirp-classic
https://www.npmjs.com/package/mkdirp-infer-owner
https://www.npmjs.com/package/mkdirp-then
https://www.npmjs.com/package/mkdirp-promise
https://www.npmjs.com/package/mkdir-parents
https://www.npmjs.com/package/mkdir-p
https://www.npmjs.com/package/node-mkdir-p
https://www.npmjs.com/package/mkdir-p-bluebird
https://www.npmjs.com/package/mkdirt
https://www.npmjs.com/package/mkdir-native
Description:
Linux command mkdir -p.
+1
############
$msg = str_replace('<?','',$msg);
$msg = str_replace('?>','',$msg);
$msg = str_replace('^','',$msg);
$msg = str_replace(';','',$msg);
$msg = str_replace('<a>','',$msg);
$msg = str_replace('</a>','',$msg);
$msg = str_replace('<A>','',$msg);
$msg = str_replace('</A>','',$msg);
$msg = str_replace('<br>','',$msg);
$msg = str_replace('</br>','',$msg);
$msg = str_replace('</BR>','',$msg);
$msg = str_replace('<BR>','',$msg);
$msg = str_replace('<p','',$msg);
$msg = str_replace('align','',$msg);
$msg = str_replace('http://','',$msg);
$msg = str_replace('wap','',$msg);
$msg = str_replace('WAP','',$msg);
$msg = str_replace('ru','',$msg);
$msg = str_replace('RU','',$msg);
$msg = str_replace('com','',$msg);
$msg = str_replace('COM','',$msg);
$msg = str_replace('h2m','',$msg);
$msg = str_replace('H2M','',$msg);
$msg = str_replace('WEN','',$msg);
$msg = str_replace('wen','',$msg);
$msg = str_replace('гu','',$msg);
$script = "waphak.ru";
$msg = str_replace('ГU','',$msg);
$msg = str_replace('HTTP://','',$msg);
$msg = str_replace('exit;','',$msg);
$msg = str_replace('EXIT();','',$msg);
$msg = str_replace('exit();','',$msg);
$msg = str_replace('()','',$msg);
$msg = str_replace('<java','',$msg);
$msg = str_replace('<JAVA','',$msg);
$msg = str_replace('</java','',$msg);
$msg = str_replace('</JAVA','',$msg);
$msg = str_replace('javascript','',$msg);
$msg = str_replace('JAVASCRIPT','',$msg);
$msg = str_replace('</','',$msg);
$msg = str_replace('</SCRIPT','',$msg);
$msg = str_replace('</script','',$msg);
$msg = str_replace('alert','',$msg);
$msg = str_replace('\r','',$msg);
$msg = str_replace('\n','',$msg);
########################
Регулярные выражения? Не слышали!
0
for course_id in COURSES: #конфиги для слабаков, реальные пацаны хардкодят константы
participants = {}
print(f'Downloading course {course_id}...')
assignments = M.get_modules(course_id, 'assign')
captions = {item['instance'] : item['name'] for item in assignments}
rawsubs_per_assignment = M.get_submissions(captions.keys())
files = []
print('\tParsing assignments... ',end='')
for i,assign in ProgressBar.each(rawsubs_per_assignment, length=50, donefmt='[OK]\n', errorfmt='[FAIL]\n'):
#самописный прогресс-бар. В скрипте, который 90% времени запускается как демон.
assign_id = assign['assignmentid']
if assign_id not in participants:
lst = M.list_participants(assign_id)
participants[assign_id] = {i['id'] : i['fullname'] for i in lst}
for rs in assign['submissions']:
subfiles = M.get_submission_files(rs)
for sf in subfiles:
f = StoredFile( #самописный псевдо-ORM
id = None,
url = sf['fileurl'],
filename = sf['filename'],
downloaded = False,
size = sf['filesize'],
mimetype = sf['mimetype'],
timestamp = sf['timemodified'],
course = course_id,
instance = assign_id,
submission = rs['id'],
userid = rs['userid'],
username = participants[assign_id][rs['userid']])
files.append(f)
print('\tTotal of {0} assignments and {1} files.'.format(len(participants), len(files)))
print('\tUpdating database... ', end='')
with DB:
for i,f in ProgressBar.each(files, captionfunc = (lambda f:f.filename),
length=25, valuefmt='{ratio:.0%} ', donefmt='[OK]\n', errorfmt='[FAIL]\n'):
DB.update_file(f) #execute_many()? зачем? И так сойдёт.
files_to_download = list(DB.get_nonready_files())
if not files_to_download:
print('All files are up to date.')
else:
ok_count = 0
error_count = 0
print('Downloading missing files... ',end='')
for i,f in ProgressBar.each(files_to_download,
captionfunc = (lambda f: f'[{error_count} errors] {f.filename}'),
length=25, valuefmt='{ratio:4.0%} ', donefmt='[OK]\n', errorfmt='[FAIL]\n'):
#исчо один прогрессбар
path = localpath(f)
dir = os.path.dirname(path)
os.makedirs(dir, exist_ok = True)
if not verify(f):
try:
with open(path, "wb") as dest:
#зачем проверять размер скачиваемого файла или наличие контента?
source = M.get_download_fileobj(f.url)
shutil.copyfileobj(source, dest)
DB.mark_downloaded(f)
except:
error_count += 1
else:
ok_count += 1
else:
ok_count += 1
if error_count > 0:
print(f'{error_count} files failed to download!')
comparisons = list(DB.get_files_to_match())
if comparisons:
print('Matching non-compared files... ',end='')
log = open('errors.txt', 'wt', encoding='utf-8') #logging для слабаков
for i,(f1,f2) in ProgressBar.each(comparisons, length=25, valuefmt='{pos}/{max}', donefmt='[OK]\n', errorfmt='[FAIL]\n'):
#оптимизировать цикл, чтобы не читать один и тот же файл по 50 раз? Нафиг, работает же.
path1, path2 = localpath(f1), localpath(f2)
ok = True
if not verify(f1):
ok = False
DB.mark_downloaded(f1, False)
if not verify(f2):
ok = False
DB.mark_downloaded(f2, False)
if ok:
content1, content2 = None, None
try:
content1 = extract_content(path1)
content2 = extract_content(path2)
similarity = compare_content(content1, content2)
except Exception as E:
if content1 is None:
log.write(path1+'\n')
elif content2 is None:
log.write(path1+'\n')
else:
log.write('Comparison error!\n')
log.write(str(E)+'\n')
else:
DB.save_diff(f1, f2, similarity)
finally: #пусть сборщик мусора порадуется
del content1
del content2
log.close()
Написал тут скрипт, самому стыдно.
Но работает.
0
//библиотеки cuda_runtime.h и device_launch_parameters.h
//для работы с cyda
#include "cuda_runtime.h"
#include "device_launch_parameters.h"
#include<vector>
#include<string>//для getline
#include <stdio.h>
#include<fstream>
using namespace std;
__global__ void Upload_to_GPU(unsigned long long *Number,unsigned long long *Stepn, bool *Stop,unsigned long long *INPUT,unsigned long long *max) {
int thread = threadIdx.x;
unsigned long long MAX_DEGREE_OF = max[0];
int X = thread;
unsigned long long Calculated_number = 1;
unsigned long long Current_degree_of_number = 2;
unsigned long long Original_numberP = INPUT[0];
Stop[thread] = false;
bool BREAK = false;
if (X!=0&&X!=1) {
while (!BREAK) {
if (Current_degree_of_number <= MAX_DEGREE_OF) {
Calculated_number = 1;
for (int counter = 0; counter < Current_degree_of_number; counter++) {
Calculated_number *=X;
}
if (Calculated_number == Original_numberP) {
Stepn[thread] = Current_degree_of_number;
Number[thread] = X;
Stop[thread] = true;
BREAK = true;
}
Current_degree_of_number++;
}
else { BREAK = true; }
}
}
}
https://habr.com/post/525892/
> Сравнение времени выполнения алгоритма на CPU и GPU
0
CASE WHEN DAY(saledate)<10 THEN '0'+STR(DAY(saledate),1) ELSE STR(DAY(saledate),2) END + '.' + CASE WHEN MONTH(saledate)<10 THEN '0'+ STR(MONTH(saledate),1) ELSE STR(MONTH(saledate),2) END + '.'+ STR(YEAR(saledate),4) as SaleDate
Я у мамы программист...
convert(varchar, saledate, 104) as SaleDate
−1
def loadDevices(list_devices, db_name, db_user, db_host, db_password):
"""Загрузка устройств из базы данных"""
psql = ClassPSQL(db_name, db_user, db_host, db_password, db_port)
for group in psql.get("SELECT * FROM user_groups"):
group_id, _, _, available_devices = group
if (group_id != 0) and (available_devices != None):
for device in parceDeviceStr(available_devices):
if (findDevice(list_devices, int(device)) == None):
local_res= psql.get("SELECT * FROM device WHERE logic_id=" + str(device))
if len(local_res):
dev_id, _, port = local_res[0]
list_devices.append(ClassDevice(int(device), str(dev_id), int(port)))
findDevice(list_devices, int(device)).addGroupID(int(group_id))
else:
findDevice(list_devices, int(device)).addGroupID(int(group_id))
for device in psql.get("SELECT * FROM sm_devs"):
dev_id, logic_id, port = device
if (findDevice(list_devices, int(logic_id)) == None):
list_devices.append(ClassDevice(int(logic_id), str(dev_id), int(port)))
list_devices = sorted(list_devices, key=lambda device: device.getLogicID())
return list_devices
------------------------------------------
class ClassGroupDevices(object):
... много методов ...
def save(self):
"""Сохранение группы устройств в postgres"""
str_logic_ids = ""
for logic_id in self.getLogicIDs():
if (len(str_logic_ids) > 0):
str_logic_ids += "," + str(logic_id)
else:
str_logic_ids = str(logic_id)
if (self._psql.get("SELECT subgroup_id FROM us_dev_sgr WHERE (group_id='%s' and name='%s')" % (str(self.getGroupID()), self.getName()))):
self._psql.set("UPDATE us_dev_sgr SET logic_ids='%s' WHERE (group_id='%s' and name='%s')"\
% (str_logic_ids, str(self.getGroupID()), self.getName()))
else:
self._psql.set("INSERT INTO us_dev_sgr (group_id, name, logic_ids) VALUES ('%s', '%s', '%s')"\
% (str(self.getGroupID()), self.getName(), str_logic_ids))
------------------------------------------
class ClassSchedule(object):
... много методов ...
def save(self, psql, list_devices:list, conf, timezone:int, schedule_id:int = 0):
assert(isinstance(psql, ClassPSQL))
assert(isinstance(list_devices, list))
# assert(isinstance(conf, INIConfigLoader))
assert(isinstance(timezone, int))
assert(isinstance(schedule_id, int))
for date in self._list_date:
for logic_id in self._list_devices:
local_device = findDevice(list_devices, logic_id)
local_port, local_value = local_device.liquidity(self._action, conf, psql)
date_time = datetime.datetime.strptime(date + " " + self._time, "%d.%m.%Y %H:%M") - datetime.timedelta(hours = timezone)
psql.set("INSERT INTO device_exec_schedule (logicid, time, subgroup, port, value, group_id, answer) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s')" %
(str(logic_id), date_time, schedule_id, str(local_port), str(local_value), str(self._groups_id), "0"))
Была дана задача сишнику не знавшему Python написать сайт на Django за 4 дня. Знаете что? Он написал. (Названия таблиц в коде изменены, но смысл сохранён). Поддерживать код дали мне. А этот код из недр
0
<?php
$val = preg_match(
'/>(\d+)</',
DashboardHelper::worksheetListLink(
$rowData,
EventType::TYPE_TEST_DRIVE,
$dealerId,
$occurredFrom,
$occurredTo,
$brands
),
$matches
) ? $matches[1] : null;
Зачем выносить расчет показателя в отдельный метод, правильно мы лучше расспарсим ссылку.