Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 12, 2018 21:35:43

SadSa13
Зарегистрирован: 2018-11-30
Сообщения: 12
Репутация: +  0  -
Профиль  

Открываем один файл из другого.

Вот в чем проблема: сейчас пишу графический интерфейс и из менюшки регистрации ( входа ) надо открыть уже основное окно.

Как бы так прописать, чтобы файл:

Во-первых, открывался.
Во-вторых, делал это без точной прописки.
Не
C\Program files\папка1\x.py
А как-нибудь
папка1\x.py

Чтобы без прописывания диска и т.п на любом пк.

Отредактировано SadSa13 (Дек. 12, 2018 21:38:14)

Офлайн

#2 Дек. 12, 2018 21:58:00

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Открываем один файл из другого.

SadSa13
Как бы так прописать, чтобы файл:

Во-первых, открывался.
в каком плане открывался? выполнялся? для этого есть import или os.subprocess в зависимости что вам конкретно нужно.
SadSa13
Во-вторых, делал это без точной прописки.
Не
C\Program files\папка1\x.py
А как-нибудь
папка1\x.py
оно и так открываеться без точной прописки, любые неабсолтные пути, по умолчанию ищуться сначала от пути запущеного скрипта, а потом согласно переменным окружения.
гуглите
os.chdir()
os.fchdir()
os.getcwd()
а также os.path где куча приблуд для работы с путями: отнсительный \ абсолютный, обьединение \разделение путей, путь к директории, расширение файла и тд…



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Дек. 12, 2018 22:00:25)

Офлайн

#3 Дек. 13, 2018 07:08:54

Rafik
Зарегистрирован: 2018-09-04
Сообщения: 231
Репутация: +  27  -
Профиль   Отправить e-mail  

Открываем один файл из другого.

Помещаем второй файл туда, где находится первый файл. Тогда подцепится без путей. Если таких “вторых” файлов много и необходимо их расположить в разных папках, то папки надо расположить по тому же пути, где находится “первый, стартовый” файл. Тогда обращение к “второму” файлу в подпапке “папка1” будет именно “папка1\x.py”. Чтобы не заморачиваться с разделителями путей, можно скомпоновать путь через os.path.join('папка1', ‘x.py’).
Кстати, можно получить из “первого” скрипта полный путь, откуда он запущен. Например, так:

 import sys
import os
otkuda_zapuschen, file_name_tekuschego_skripta = os.path.split(sys.argv[0])
# Теперь можем получить полный путь к "папка1\x.py" , 
# при условии: если папка1 находится там же, где этот скрипт
full_path_nachinaya_s_imeni_diska = os.path.join(otkuda_zapuschen, 'папка1', 'x.py')

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version