Есть ли способ узнать, где находится ваш файл Python?

1

(Python2.7-3.2 на WindowsXP) Я использовал sys.arg [0], но теперь я выполняю его из пакета script (для определения, есть ли у пользователя python)

Спасибо ^^

~ ps: Предложите, если вы знаете лучший способ узнать, есть ли у пользователя Python

  • 0
    Хм? Если вы используете скрипт Python, то, очевидно, у пользователя есть Python !?
Теги:
python-3.x
python-2.7

5 ответов

7
Лучший ответ

Возможно, вы ищете

os.path.dirname(__file__)
  • 0
    Большое спасибо, сэр!
1

Вы можете прочитать переменную __file__, чтобы узнать путь к текущему интерпретируемому файлу Python.

  • 2
    Это __file__ , а не __FILE__ .
  • 0
    Вы правы, я случайно перепутал C ++. :)
0

Чтобы добавить к этому, хотя он уже ответил, вот что я получил с этого сайта (не помню источник)

import os, sys
print "CWD: ", os.getcwd()
print "Script: ", sys.argv[0]
print ".EXE: ", os.path.dirname(sys.executable)
print "Script dir: ", os.path.realpath(os.path.dirname(sys.argv[0]))
pathname, scriptname = os.path.split(sys.argv[0])
print "Relative script dir: ", pathname
print "Script dir: ", os.path.abspath(pathname)
print 'Current file: ', os.path.dirname(__file__)
print os.path.dirname(__file__) + '/IDLESTARTUP.txt'
0

вы можете взглянуть на это сообщение, которое проверяет реестр

командный файл, чтобы проверить, установлен ли Python

кажется простым:

reg query "hkcu\software\Python 2.6"

Альтернативой является проверка% PATH%. Я не уверен, как это сделать, так как у меня нет установленных окон для тестирования:)

Попробуйте узнать больше о "reg query" и о том, как искать% PATH% для исполняемых файлов!

Удачи!

  • 0
    Это не отвечает на вопрос, который был задан.
  • 0
    Нет, но он отвечает на вопрос PS, который я задал, Брайан. Спасибо, Оби. Но знаете ли вы, как это сделать для python3? Кажется, перечислить Python2 в запросе reg "hkcu \ software"
0
os.path.normpath(os.path.abspath(os.path.dirname(__file__)))

Ещё вопросы

Сообщество Overcoder
Наверх
Меню