class Product:
def __init__(self, data_from_db):
self.name = data_from_db[1]def select_product_all(self):
with self.connection:
products = []
for product in self.cursor.execute("SELECT * FROM products_product, products_product_media WHERE products_product.id = products_product_media.product_id").fetchall():
products.append(Product(product))
self.connection.close()
return productsfor i product in products:
print(product, product.name) import json
data = {
'param1': 'val1',
'param2': 10,
'parm3': 11.54,
'country': {
'name': 'Russia',
'cities': ['Moscow']
}
}
print(data)
serialized_to_string = json.dumps(data) # сериализация с записью в строку
print(serialized_to_string)
with open('testfile.json', 'w') as fle:
json.dump(data, fle) # сериализация с записью в файл
# ### читаем
with open('testfile.json', 'r') as fle:
loaded = json.load(fle) # чтение из файла
print(loaded)
loaded_from_string = json.loads(serialized_to_string) # из строки
print(serialized_to_string)thr = Thread(target = script.drg(var1,var2)) # исполнение!thr = Thread(target = script.drg, args=(var1, var2)) # а вот так должно работать widg1.setHorizontalStretch(1)
widg2.setHorizontalStretch(2)import sys
import traceback
try:
10 / 0
except:
print(traceback.format_exc(10), file=sys.stderr) # где 10 - максимальная глубина стека def dosmth():
print('command')
cmd = {
'cmd1': dosmth
}
cmd['cmd1']() p = subprocess.Popen('gdb.exe',
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
stdin=subprocess.PIPE)
while not p.poll(): # щупает процесс на предмет кода завершения, если кода нет - возвращает None
print(p.stdout.readline()) # будет ждать целую строку из stdout
p.stdin.write(b'testbytes') # напишет в stdin