Decided to write it in addition to the top answer, as it helped me, but as I'm noob it took some time for me to understand. So I hope my example of code will help to save the time for those, who will try to solve the same issue:
document = open("<filename, like: 'test.txt'>", "rb")
url = f"https://api.telegram.org/bot{YOUR_BOT_TOKEN}/sendDocument"
response = requests.post(url, data={'chat_id': chat_id}, files={'document': document})
# part below, just to make human readable response for such noobies as I
content = response.content.decode("utf8")
js = json.loads(content)
print(js)
Example of response:
{'ok': True, 'result': {'message_id': 865, 'from': {'id': 111111, 'is_bot': True, 'first_name': 'BotName', 'username': 'LongBotName'}, 'chat': {'id': 111111, 'first_name': 'Name', 'last_name': 'Surname', 'username': 'user', 'type': 'private'}, 'date': 1672056973, 'document': {'file_name': 'test.txt', 'mime_type': 'text/plain', 'file_id': 'BQACAgIAAxkDAAIDYWOpkI1wkcuXMTy8hlob6Vr46UFxAALLJAACG1pJSX0tj7Ubt_sTLAQ', 'file_unique_id': 'AgADyyQAAhtaSUk', 'file_size': 239}}}
As a result bot sent our file to the user by chat_id that we've specified
Also important note: file, that you want to send must be in the same location as .py file that executes this code