from datetime import datetime
chday = datetime.strptime('datetime.date(2018, 12, 31)', 'datetime.date(%Y, %m, %d)')
today = datetime.today()
print(today < chday)
print(today > chday)
print(today == chday)
type(chday)
True
False
False
<class 'datetime.datetime'>
result = ' '.join([
pattern.format(value) for value, pattern in zip(
(x.days, x.seconds//3600, (x.seconds//60)%60, x.seconds),
('{} д.', '{} час.', '{} мин.', '{} сек.'),
)
if value
])
pyvenv .venv
python3 -m venv .venv
python3 --help
-m mod : run library module as a script (terminates option list)
j = json.loads(JSONDATA)
data = dict([(v['key'], v['hash'])for v in j['hashmap']])
{
'assessment': '6d3f4796275bb54c21a33b82f399cc6d',
'bulletinFamily': '601892ece72be3be2f57266ca2354792',
'cpe': 'a173072793578541ea04b7baa0323592',
'cvelist': 'ab861885dbe02d09a3a2208dd9731d62',
'cvss': '3c236091754d2db00c1c42f811b3ada4',
...
}
let totals = response.data.totals[0]
URLSearchParams
, он автоматически кодирует недопустимые в URL символы и склеивает все параметры в одну строку:var params = new URLSearchParams();
params.append('token', 'a b c');
params.append('limit', 100);
var baseApiUrl = 'https://api-metrika.yandex.ru/stat/v1/data';
console.log(baseApiUrl + '?' + params.toString());
// → https://api-metrika.yandex.ru/stat/v1/data?token=a+b+c&limit=100
На электрическом уровне каждое соединение использует низковольтную дифференциальную передачу сигнала (LVDS), приём и передача информации производится каждым устройством PCI Express по отдельным двум проводникам, таким образом, в простейшем случае устройство подключается к коммутатору PCI Express всего лишь четырьмя проводниками.
Использование подобного подхода имеет следующие преимущества:
карта PCI Express помещается и корректно работает в любом слоте той же или большей пропускной способности (например, карта x1 будет работать в слотах x4 и x16);
слот большего физического размера может использовать не все линии (например, к слоту x16 можно подвести проводники передачи информации, соответствующие x1 или x8, и всё это будет нормально функционировать; однако при этом необходимо подключить все проводники питания и заземления, необходимые для слота x16).
В обоих случаях на шине PCI Express будет использоваться максимальное количество линий, доступных как для карты, так и для слота. Однако это не позволяет устройству работать в слоте, предназначенном для карт с меньшей пропускной способностью шины PCI Express. Например, карта x4 физически не поместится в стандартный слот x1, несмотря на то, что она могла бы работать в слоте x1 с использованием только одной линии. На некоторых материнских платах можно встретить нестандартные слоты x1 и x4, у которых отсутствует крайняя перегородка, таким образом, в них можно устанавливать карты большей длины, чем разъем. При этом не обеспечивается питание и заземление выступающей части карты, что может привести к различным проблемам.