Мені знадобилися певні зусилля, шукаючи відповіді тут, в Інтернеті, і в документації на Python, і на власному тестуванні, щоб нарешті змусити мої сценарії Python безперебійно працювати на моїх машинах Windows (WinXP і Win7). Отже, я щойно про це робив блог і вставляв це нижче, якщо це стане в нагоді іншим. Вибачте, що це довго, і сміливо вдосконалюйте його; Я не експерт.
[ ОНОВЛЕННЯ : Python 3.3 тепер включає Python Launcher для Windows, який дозволяє вводити py (а не python) для виклику інтерпретатора за замовчуванням або py -2, py -3, py -2.7 тощо. Він також підтримує лінії shebang , що дозволяє самому сценарію вказати. Для версій до 3.3, пускова програма доступна як окрема завантаження.
http://docs.python.org/3/whatsnew/3.3.html
]
Запуск сценаріїв Python зручно в Windows
Можливо, ви створюєте власні сценарії Python, або, можливо, хтось подарував вам щось для того, щоб зробити щось із вашими файлами даних. Скажіть, ви придбали скрипт Python і зберегли його в "D: \ my script / ApplyRE.py". Ви хочете зручно запустити його, або двічі клацнувши по ньому або ввівши його в командному рядку з будь-якого місця, з можливістю передавати параметри до нього так (-o означає "перезаписати вихідний файл, якщо він вже існує"):
ApplyRE infile.txt outfile.txt -o
Скажімо, у вас також є файл даних "C: \ деякі файли \ деякий lexicon.txt". Найпростіший варіант - перемістити файл або сценарій, щоб вони знаходилися в одному місці, але це може стати безладно, тому припустимо, що вони залишаться окремими.
Переконайтесь, що Windows може знайти інтерпретатора Python
Після встановлення Python переконайтеся, що введення python у командному рядку працює (а потім введіть exit (), щоб вийти з інтерпретатора Python).
C:\>python
Python 3.2 (r32:88445, Feb 20 2011, 21:29:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\>
Якщо це не працює, вам потрібно додати щось подібне "; C: \ Python32" (без лапок) до змінної середовища PATH. Щоб отримати інструкції, див. PATHEXT нижче.
Пов’язування Python із .py та .pyc
Перевірте, чи запускається подвійне клацання на ApplyRE.py. (Він також повинен мати логотип Python як його піктограму і мати, до речі, позначку "Файл Python".) Якщо цього ще не зроблено, клацніть правою кнопкою миші файл .py, виберіть "Відкрити", "Виберіть програму" та перевірте "Завжди використовувати ..." Ця асоціація покращує зручність, але не є суворо необхідною - ви можете вказувати "python" кожного разу, коли ви хочете запустити сценарій, наприклад:
D:\my scripts>python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Ось дуже конкретний варіант, який необов’язковий, якщо вам не потрібно вказати іншу версію перекладача.
D:\my scripts>c:\python32\python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Але це біль. На щастя, після встановлення Python у PATH та його зв’язку з .py, потім двічі клацніть файл .py або безпосередньо набравши його як команду. Тут ми здаємося, що сценарій запускається безпосередньо - приємно і просто запустити його на зразковому файлі, який знаходиться в папці "Мої сценарії" разом із сценарієм.
D:\my scripts>ApplyRE.py lexicon-sample.txt -o
Running... Done.
Опущення розширення .py (редагування PATHEXT)
Щоб ще більше зменшити введення тексту, ви можете сказати Windows, що .py (а можливо, .pyc файли) виконується. Для цього клацніть правою кнопкою миші Комп'ютер та виберіть Властивості, Додатково, Змінні середовища, Змінні системи. Додайте "; .PY; .PYC" (без лапок) до існуючої змінної PATHEXT або інакше створіть її, якщо ви certan, вона ще не існує. Закрийте та знову відкрийте командний рядок. Тепер ви зможете опустити .py (FYI, якщо це зробить, замість цього, запустити ApplyRE.exe або ApplyRE.bat, якщо такий існує).
D:\my scripts>ApplyRE lexicon-sample.txt -o
Running... Done.
Додавання сценаріїв до системи PATH
Якщо ви збираєтеся використовувати свої сценарії часто з командного рядка (це менш важливо, якщо це робити за допомогою файлів BAT), тоді вам потрібно буде додати папку сценаріїв до системи PATH. (Поруч із PATHEXT ви повинні побачити змінну PATH; додайте до неї "; D: \ мої сценарії", без лапок.) Таким чином ви можете запустити скрипт з іншого місця розташування проти файлів у поточному місці, наприклад:
C:\some files>ApplyRE "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
Успіху! Це майже все, що вам потрібно зробити, щоб упорядкувати командний рядок.
Біг безпосередньо, не налаштовуючи PATH
Якщо ви швидкий машиніст або не проти створити пакетний файл для кожної ситуації, ви можете вказати повний шлях (для сценарію чи параметрів) замість налаштування PATH.
C:\some files>"d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
C:\some files>d:
D:\>cd "my scripts"
D:\my scripts>ApplyRE.py "c:\some files\some lexicon.txt" "c:\some files\some lexicon OUT.txt" -o
Running... Done.
Створення ярликів або пакетних файлів
Якщо .py пов'язаний із встановленим Python, ви можете просто двічі клацнути ApplyRE.py, щоб запустити його, але консоль може з'явитися і зникнути занадто швидко, щоб прочитати її вихід (або збій!). І щоб передати параметри, вам спочатку потрібно зробити одне з наступних. (a) Клацніть правою кнопкою миші та створіть ярлик. Клацніть ярлик правою кнопкою миші, щоб відредагувати властивості та додати параметри до цільового. (b) Створіть пакетний файл - звичайний текстовий файл з виразним іменем, таким як ApplyRErun.bat. Цей варіант, мабуть, кращий, тому що ви можете попросити його зробити паузу, щоб ви могли бачити вихід. Ось приклад вмісту файлу BAT, записаний для розміщення та запуску із файлів c: \ деяких файлів.
python "d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
pause
Розширено: додавання до PYTHONPATH
Зазвичай це не потрібно, але інша змінна середовище, яка може бути актуальною, - PYTHONPATH. Якщо ми додамо d: \ мої сценарії до цієї змінної, то інші сценарії Python в інших місцях могли б використовувати їх через заяви про імпорт.