@overload
@classmethod
def get_mac_address(cls, with_gateway: typing.Literal[False] = False) -> str:
...
@overload
@classmethod
def get_mac_address(cls, with_gateway: typing.Literal[True]) -> tuple[str, str]:
...
@classmethod
def get_mac_address(cls, with_gateway: bool = False) -> typing.Union[str, tuple[str, str]]:
...
let requestCounter = 0
let jsonRpcPromises = {}
function jsonrpc (method, params) {
const dataToSend = { jsonrpc: '2.0', method, params, id: ++requestCounter }
socket.send(JSON.stringify(dataToSend))
return new Promise((resolve, reject) => {
jsonRpcPromises[requestCounter] = { resolve, reject }
})
}
function completeJsonrpc (message) {
const { id, error, result } = message
if (error !== undefined) {
jsonRpcPromises[id]?.reject(error)
} else {
jsonRpcPromises[id]?.resolve(result)
}
delete (jsonRpcPromises[id])
}
//
socket.onmessage = function (event) {
const message = JSON.parse(event.data)
///
if (message.jsonrpc) {
completeJsonrpc(message)
} else if (...) {
///
}
pointer-events: none;
class TestClass:
def __init__(self, number: (int, str)):
self._number = number
@property
def number(self):
if isinstance(self._number, int):
return self.__int_number()
elif isinstance(self._number, str):
return self.__str_number()
else:
return self._number
@number.setter
def number(self, value):
self._number = value
def __int_number(self):
return self._number * 100
def __str_number(self):
return f'Hello world - {self._number}'
value_int = 150
testInstance = TestClass(value_int)
print(testInstance.number)
value_str = '0MG'
testInstance.number = value_str
print(testInstance.number)
value_another_type = ['one', 'two']
testInstance.number = value_another_type
print(testInstance.number)
# my_script.py
import sys
def main(args: list[str]):
"""Тело скрипта здесь..."""
if __name__ == '__main__':
# скрипт запущен независимо
main(sys.argv[1:])
import my_script
my_script.main(['--work-dir', work_dir, '--result-dir', result_dir])
что делать с этим: "" символом, который в виде байта выглядит: "\x08"?Нужно обрабатывать, как оно и задумывалось. Символ
0x08
— Backspace, с помощью него консольные приложения обновляют данные, которые сами же в консоль и отправили._25%
— пробел, две цифры, символ процента. Затем идет четыре символа Backspace ("стирание" предыдущего символа) и четыре символа обновлённого статуса (_26%
). await Bot.send_message(message.from_user.id, message.text)
class Test:
def test(self, x):
print(f"Я {self} и я получил {x}")
t = Test() # создаём экземпляр
t.test(42) # Я <__main__.Test object at 0x000001BB195CBC70> и я получил 42
# это тоже сработает, и это практически эквивалентно вызову выше
Test.test(t, 42) # Я <__main__.Test object at 0x000001BB195CBC70> и я получил 42
# а это - то, что попытался сделать ты:
Test.test(42) # TypeError: Test.test() missing 1 required positional argument: 'x'
# потому что вызван метод класса, а не объекта, и его первый параметр (42) интерпретирован как self