subprocess.Popen
, os.system
, os.spawn
, os.startfile
, os.exec
, os.fork
и так далее. import sys
import traceback
# хук который ловит событие импорта модуля
def hook(event, args):
if event != 'import':
return
name, filename = args[0], args[1]
callstack = traceback.extract_stack(limit=None)
print(event, name, filename)
for item in traceback.format_list(callstack):
print(' ', item.strip())
sys.addaudithook(hook)
import json
print('Done')
print(languages is new_list) # True
a = [1, 2, 3]
b = a # b ссылается на тот же список
b.append(4) # список изменили
a = 5
b = a # b ссылается на 5
a += 1 # a = a + 1 т.е. a = 6 - a теперь ссылается на новый объект 6, b - по прежнему на 5.
__declspec(dllexport) outdata SpiralsCoord(float x1, float x2, float x3, float x4, float x5, int x6) {
outdata data;
data.out_x1 = xy1;
data.out_x2 = xy2;
data.out_x3 = xy3;
return data;
}
__declspec(dllexport) void SpiralsCoord(float x1, float x2, float x3, float x4, float x5, int x6, outdata* data) {
//используем оператор ->, так как data теперь указатель на структуру, а не сама структура
data->out_x1 = xy1;
data->out_x2 = xy2;
data->out_x3 = xy3;
}
self.filters = { # тут у тебя человекочитаемые заголовки
"ID": tk.StringVar(),
"Город": tk.StringVar(),
"Температура": tk.StringVar(),
"Погода": tk.StringVar(),
"Скорость ветра": tk.StringVar(),
}
# тут ты переносишь пару заголовок-значение в словарь строка:строка
filter_values = {criteria: var.get() for criteria, var in self.filters.items()}
...
for criteria, value in filter_values.items():
if value: # а тут ты внезапно решаешь что у тебя ключ - имя поля, а не заголовок
conditions.append(f"{criteria} LIKE ?")
CREATE TABLE IF NOT EXISTS
создадут отсутствующую таблицу, но не изменят таблицу, если она уже существует. Даже если структура таблицы отличается от заданной. Скажем, если ты добавил автоинкремент в запрос CREATE позднее, то в реальной таблице его не будет.SELECT sql FROM sqlite_schema WHERE type = 'table' AND name = 'customers'
@bot.message_handler(content_types='text')
def us(message):
bot.send_message(message.chat.id, 'проверка')
@client.on(events.NewMessage(chats=url))
async def main(event):