syncio.get_event_loop().run_until_complete(waiter())
from pathlib import Path
backup_path = 'c:/temp/mybackups/Drive-C/Users/User/AppData/Local/Temp/scp26772/home/admin/web'
p = Path(backup_path)
index = p.parts.index('home')
new_path = Path('c:/temp/mybackups/WinScp').joinpath(*p.parts[index:])
print(new_path)
class CmdHandler:
def __init__(self, server):
self.somearg = 1
self.__dict__.update({k: v for k, v in server.__dict__.items() if not k.startswith("_")})
class Server(object):
def __init__(self):
self.event = "None Server "
self.obj = None
self.cmd = None
self.args = None
def handler(self):
return CmdHandler(self)
h = Server().handler()
print(h.event)
>None Server
#End flags
End_a=
- все это можно заменить на словарь листов или совсем убрать этот список, а просто считать количество обработок, и сравнивать их с длиной списка.>>> l = ['abc', 'apple', 'pen', 'abc', 'pen', 'pc']
>>> index_els = {v: k for k, v in reversed(tuple(enumerate(l)))}
>>> result = [index_els[k] for k in l]
>>> result
[0, 1, 2, 0, 2, 5]
match = re.findall(r'(?P<v>=(.+?)")+.*(title="(.+?)")', doc)
from dataclasses import dataclass
@dataclass
class Record:
times: str = None
name: str = None
room: str = None
array = ["1-ая пара, предмет, аудитория", "2-ая пара, предмет, аудитория",
"2-ая пара, предмет, аудитория", "4-ая пара, предмет, аудитория"]
schedule = [Record(*v.split(',')) for v in array]
new_parsing_times = ["9:40 - 10:30", "10:40 - 12:10", "12:50 - 14:20", "14:30 - 16:00"]
for record, new_times in zip(schedule, new_parsing_times):
record.times = new_times
print(schedule)
import re
input_file = """This is line #aabbcc #ddeeff
This is line #aab66c #ddee44
This is line #aabbcc #cceeff #aa11cc #dd22ff
This is line #aabbcc #ddee00 #dd11ff"""
pattern = re.compile(r'#\w{6}')
def invert(color_to_convert):
table = "".maketrans('0123456789abcdef', 'fedcba9876543210')
return color_to_convert.lower().translate(table).upper()
def replace(s: str):
colors = [invert(color) for color in pattern.findall(s)]
s = pattern.sub("{}", s)
return s.format(*colors)
for line in input_file.split('\n'):
print(replace(line))
This is line #554433 #221100
This is line #554993 #2211BB
This is line #554433 #331100 #55EE33 #22DD00
This is line #554433 #2211FF #22EE00
import asyncio
from time import time
els = list(range(20))
async def rm_list(v):
await asyncio.sleep(5)
print(v)
async def _main():
await asyncio.gather(*(
rm_list(value) for value in els
))
start = time()
loop = asyncio.get_event_loop()
loop.run_until_complete(_main())
loop.close()
print(time() - start)
sells={
... "Маша":"Samsung 20",
... "Максим":"Iphone 6S",
... "Наташа":"Lenovo Legion"
... }
prices={
... "Samsung 20": 300,
... "Iphone 6S": 260,
... "Lenovo Legion": 450
... }
result = [name for name, tel in sells.items() if prices.get(tel, 999) < 350]
>>> print(result)
['Маша', 'Максим']
import re
s = "выставляет на аукцион (214422): 1*Кожаная туника - 900 золота , " \
"нужно вычленить именно число в скобках, у каждого такого сообщения они каждый раз разные."
lot_re = re.compile(r'\((?P<lot_id>\d+)\)')
result = lot_re.search(s).groupdict()
print(result)
{'lot_id': '214422'}