Попробуйте следующее: jdbc:oracle:thin:@oracle.hostserver2.mydomain.ca:1522/ABCD
Изменить: за комментарий ниже это действительно правильно: jdbc:oracle:thin:@//oracle.hostserver2.mydomain.ca:1522/ABCD
(обратите внимание на //
)
Если вы имеете в виду каталог выполняемого скрипта:
import os
os.path.dirname(os.path.abspath(__file__))
Если вы имеете в виду текущий рабочий каталог:
import os
os.getcwd()
Обратите внимание, что до и после file
стоит два подчеркивания, а не одно.
Также обратите внимание, что если вы работаете в интерактивном режиме или загрузили код не из файла (например, из базы данных или интернет-ресурса), то __file__
может быть не установлен, поскольку понятия "текущий файл" не существует. В приведенном выше ответе предполагается наиболее распространенный сценарий запуска сценария python, находящегося в файле.
Я нашел, что следующие команды все возвратят полный путь родительского каталога сценария Python 3.6.
Сценарий Python 3.6:
#!/usr/bin/env python3.6
# -*- coding: utf-8 -*-
from pathlib import Path
#Get the absolute path of a Python3.6 script
dir1 = Path().resolve() #Make the path absolute, resolving any symlinks.
dir2 = Path().absolute() #See @RonKalian answer
dir3 = Path(__file__).parent.absolute() #See @Arminius answer
print(f'dir1={dir1}\ndir2={dir2}\ndir3={dir3}')
ссылки Объяснения: .resolve () , .absolute () , Путь ( файл ) .parent () .absolute ()