Терпеть не могу их на самом деле, и избегаю использовать, т.к. считаю что лучше написать 2-3 лишних строчки кода. зато они будут читаться намного лучше. Однако же иногда попадаются, и иногда использую. Вот пример как использовать его в python
Синтаксис:
переменная=значение_1 if (условие выполняется) else значение_2
Пример:
1
radius=aifa>belseb
Читаем так: radius будет равно a, если a больше b, иначе radius будет b. Или тоже самое в классическом виде:
Михаил Гаевский. Стратег 1-2. Краткий сюжет: военный наемник выполняя задание в Афганистане попадает на борт космического корабля. И понеслось (с). По вселенной EVE: нейросети и т.п. Оценка 3/5. Читабельно
Михаил Гаевский. Такси на Энельвейт. Сюжет: простой таксист оказался не в том месте не в то время и потому попадает в лапы «Синдиката». Чтобы выкупиться необходимо работать..таксистом. Что получилось в принципе не плохо. По вселенной EVE: нейросети и т.п. Оценка 3/5. Читабельно.
Андрей Евремов: Путь хранителя 1-9. Сюжет: Вся жизнь игра. Только играют тобой «Старшие» расы. А ты и всё население планеты Земля — всего лишь клоны с заблокированными генами. Но и «Старшие» на самом деле являются лишь игрушками в руках творцов, хранителей, хаоса и пустоты. Оценка 4/5
Ascord Flow: Релокант 1-3. Люди погубили свою планету в результате Ядерной войны, но в последний момент им предоставлен шанс начать всё заново, в конкурентной борьбе с другими такими же цивилизациями уничтожившими свой ми. Оценка 4/5
В общем в рамках компании по попытке обучения одного товарища программированию, написал небольшую консольную игру, дабы с ним попробовать её воспроизвести.
Суть игры: компьютер загадывает случайную кнопку из списка и время за которое игрок должен успеть её нажать. Если игрок успевает нажать — ему добавляется балл.
Итак, для написания понадобится знать что такое циклы, массивы, случайные числа. Использовать будем модули keyboard, random и time
keyboard — для получения нажатий клавиш на клавиатуре
random — для получения случайных числел
time — для расчета времени реакции
Для начала определим одномерный массив, в котором перечислим доступные для выбора компьютером клавиши.
1
keys=["q","w","e","r","t","y"];
Далее создадим бесконечный цикл, внутри которого будем выбирать случайную клавишу для нажатия:
1
2
3
4
5
6
7
8
import keyboard
import random
import time
keys=["q","w","e","r","t","y"];
whileTrue:
key_to_press=keys[random.randint(0,len(keys)-1)]
print(f"-нажми кнопку {key_to_press}")
Что делает этот код? Бесконечно выводит в консоль сообщение о том, что нужно нажать случайно выбранную кнопку. Давайте теперь чуть переделаем код, чтобы случайно выбиралась не только клавиша которую нужноно нажать игроку, но и время за которое ему нужно её нажать:
1
2
3
4
5
6
7
8
9
10
import keyboard
import random
import time
keys=["q","w","e","r","t","y"];
whileTrue:
key_to_press=keys[random.randint(0,len(keys)-1)]
time_to_press=random.randint(1,3)
print(f"Нажми кнопку {key_to_press} за {time_to_press} секунды");
Что дальше? А дальше нам нужно объявить еще один цикл и ждать пока не истечет время отведенное для того чтобы игрок нажал кнопку. Для этого, перед началом цикла запомним время начала игры, и внутри цикла постоянно будем проверять, на сколько оно отличается от текущего времени:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import keyboard
import random
import time
keys=["q","w","e","r","t","y"];
whileTrue:
key_to_press=keys[random.randint(0,len(keys)-1)]
time_to_press=random.randint(1,3)# время в секундах ожидания реакции
print(f"Нажми кнопку {key_to_press} за {time_to_press} секунды");
start_time=time.time()# запоминаем время начала игры
whileTrue:
if(time.time()-start_time>time_to_press):# разница между текущее временем и временем начала игры больше чем time_to_press, то игрок не успел нажать кнопку
print("- ты проиграл, не успел нажать!")
break;
Теперь добавим чуточку интерактивности, а именно проверку, «а не нажата ли клавиша загаданная компьютером»:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import keyboard
import random
import time
keys=["q","w","e","r","t","y"];
whileTrue:
key_to_press=keys[random.randint(0,len(keys)-1)]
time_to_press=random.randint(1,3)# время в секундах ожидания реакции
print(f"Нажми кнопку {key_to_press} за {time_to_press} секунды");
start_time=time.time()# запоминаем время начала игры
whileTrue:
if(time.time()-start_time>time_to_press):# разница между текущее временем и временем начала игры больше чем time_to_press, то игрок не успел нажать кнопку
print("- ты проиграл, не успел нажать!")
break;
ifkeyboard.is_pressed(key_to_press):
print(f'-Ты выиграл!')
break
Ну и осталось чуток прилизать код, добавив возможность подсчета кто круче, компьютер или игрок:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import keyboard
import random
import time
# создадим массив с доступными клавишами
keys=["q","w","e","r","t","y"];
count_win_gamer=0
count_win_pc=0
whileTrue:
start_time=time.time()
key_to_press=keys[random.randint(0,len(keys)-1)]
time_to_press=random.randint(1,3)
print(f"Нажми кнопку {key_to_press} за {time_to_press} секунды");
win=False;
whileTrue:
if(time.time()-start_time>time_to_press):
print(f"- ты проиграл уже {count_win_pc} , не успел нажать! Общий счёт: {count_win_pc}/{count_win_gamer} (ты)")
count_win_pc=count_win_pc+1
break;
ifkeyboard.is_pressed(key_to_press):
count_win_gamer=count_win_gamer+1
print(f'-Ты выиграл уже {count_win_gamer} раз! Общий счёт: {count_win_pc}/{count_win_gamer} (ты)')
После переноса одного из сайтов на wordpress с одного сервера на другой, столкнулся с проблемой, что все ресурсы (css, js и т.п.) грузятся по протоколу http, хотя основной сайт грузится по https (загрузка http вместо https). Изменение и проверка всего и вся в БД результата не дало. Помог рецепт добавить в wp-config.php строчку:
1
$_SERVER['HTTPS']='on';
Заработало. Что такое было, не понятно.. Точнее понятно что это настройки apache, но вот какие, так обнаружить и не удалось.
P.S. Кроме того, естественно была проведена работа по замене всех ссылок вида http на https внутри БД wordpress. Однако это не помогло в моём случае.