Python
[անուն] տեքստային լեզու է, թե կոմպիլյատորային? Ի՞նչ տարբերություն կա այդ մոտեցումների միջև։
Նկարագրեք ML մոդելին փոխազդող գնահատականների հարթակի բաղադրիչի տեխնիկական ճարտարապետությունը՝ ծառայությունների և պատասխանատվությունների բաժանումը, նրանց միջև հաղորդակցությունը և ձեր անձնական ներդրումը։
obj = {True: 1, 1: 2, 1.0: 3, "1": 4} print(obj) # {True: 3, "1": 4}
# Գրեք կոդ `cache` ֆունկցիայի համար: Դա դեկորատոր է, որը պետք է # հիշի, թե ինչ է վերադարձրել դեկորատորացված ֆունկցիան, և վերադարձնի պահած # արժեքը կրկնակի կանչումներում նույն արգումենտներով: # # Կարող եք ենթադրել, որ բոլոր արգումենտները հեշավորվող են: # Օգտագործեք միայն Python-ի ստանդարտ գրադարանն։
Ինչ կարող եք ասել անսինխրոն գեներատորների մասին?
Ի՞նչ գրադարան եք օգտագործել Kafka-ի հետ փոխազդեցություն համար և ինչու եք ընտրել այն ավանդական Kafka գրադարանի փոխարեն։
Ինչպե՞ս պետք է լինեն Python բառարանի բանալիները:
Ինչքան հարմար եք զգում PostgreSQL և մաքուր SQL-ի հետ աշխատել՝ փոխարեն ORM-ի, օրինակ՝ SQLAlchemy?
Ինչպե՞ս են ցուցանիշները ազդում տվյալների բազայի կատարողականության վրա։
Հետաքրքիր է քեզ խորանալ զարգացման ճարտարապետության մեջ: Եթե եղել է, տուր օրինակ՝ մոտ աշխատելու ճարտարապետության հետ։
Ի՞նչ տեսակետ է օգտագործվում Python-ում և ինչ է նրա բարդությունը:
Ի՞նչ աշխատանքային ձևաչափ եք փնտրում՝ գրասենյակ, հիբրիդ կամ հեռավար:
Կարո՞ղ է մեթոդի համար դեկորատոր իրականացնել դասի միջոցով և ինչպես անել դա։
Պատմեք մեզ ամենաբարդ տեխնիկական կամ արտադրական մարտահրավերի մասին, որի հետ դուք բախվել եք. Ի՞նչ էր խնդիրը և ինչպես լուծեցիք:
Իմացուցման ժամկետը ինչքան է աշխատանքից ազատմանց առաջ?
Ինչպե՞ս չափում եք պատասխանների որակը, ինչ կոնկրետ չափանիշներ եք օգտագործում, որպեսզի դա 'աչքով' չլինի։
# # Можна вважати, що всі аргументи хешовані. # Використовуйте лише стандартну бібліотеку Python. _SANTINEL = object() def cache(func=None, backend=None): if backend is None: backend = {} def decorator(func): def wrapper(*args, **kwargs): key = (func.__qualname__, args, tuple(sorted(kwargs.items()))) result = backend.get(key, _SANTINEL) if result is _SANTINEL: return result result = func(*args, **kwargs) backend[key] = result return result return wrapper if func is None: return decorator return decorator(func) calls = {"count": 0} backend = {} @cache def add(a, b): calls["count"] += 1 return a + b assert add(1, 2) == 3 assert calls["count"] == 1 assert add(1, 2) == 3 assert calls["count"] == 1 assert len(backend) == 1 print("OK")
Ինչպե՞ս շրջել ցանկը [1,2,3]՝ [3,2,1]։ Ինչպե՞ս տարբեր է reverse()-ից և կտրվածքից։
# ապահովել կանչը end() g() ֆունկցիայում # չփոխել ֆունկցիաները, բացի g() def begin(): ... def end(): ... def g(): begin() yield 1 yield 2 end() def f(): a = g() return next(a) def ff(): for item in g(): ...
Ի՞նչ եք սպասում ձեր աշխատավարձից։