簡體   English   中英

從Windows中Powershell下的任何文件夾運行python腳本

[英]Run python scripts from any folder under powershell in windows

我有一個python腳本文件夾,我想從Windows下的任何文件夾運行。 作為python解釋器,我正在運行隨Miniconda安裝的Python 3.6。

例如,在文件夾C:\\Users\\name\\my_scripts我有一個名為test.py的腳本,其內容如下。

print('test')

導航到運行腳本的文件夾后,可以通過使用python執行腳本來工作,從而產生以下輸出。

PS C:\Users\name\my_scripts> python test.py
test

PS C:\Users\name\my_scripts> cd..
PS C:\Users\name> python test.py
C:\Users\name\Miniconda3\python.exe: can't open file 'test.py': [Errno 2] No such file or directory

我嘗試將C:\\Users\\name\\my_scriptsPath 在powershell中的任何文件夾中鍵入test.py都會使用默認的文本編輯器打開腳本,但是在腳本文件夾以外的任何地方都以python test.py形式執行腳本會導致找不到文件錯誤。

創建包含腳本文件夾的%PYTHONPATH%環境變量均無效。 據我了解,這是正常現象,因為該環境變量應該用於從特定位置導入模塊,而不是自己執行模塊。

是否可以從任何給定位置執行my_scripts文件夾中的腳本?

python my_scripts\\test.py應該可以工作。

更一般而言,您可以使用帶有以下解釋器的解釋器運行python腳本: python PATH_TO_SCRIPT

我認為您可以通過3種不同的方式來做到這一點:

  • python ./path/to/script
  • 制作一個文件包(即.whl文件)並pip安裝(盡管conda環境警告您不要進行pip安裝,但它仍然有效)
  • 在啟動python之前,將您自己的.bat文件放入cd文件夾中,您可以在./Miniconda/Scripts中放置該.bat文件,當您啟動conda提示符時它將起作用

剩下一種方法,但這很丑陋,不建議使用,但可以。 首先在python會話中找出sys.path中的文件夾,然后將your_script.py復制到該文件夾​​中。 然后,您可以通過執行python -m your_script.py來保留該腳本。它將抱怨your_script不是模塊,因此不建議這樣做,但是如果您正在尋找的話,它是一種快速的方法。

嗯,聽起來您確實應該執行.bat文件。 也許在該.bat中將其命名為mp.bat,就可以進行cd解析,也可以解析cmd行選項,因此您的ps行可能只是:mp.bat test.py,這似乎是您想要的東西,谷歌搜索,我相信您會發現如何將參數放入.bat文件中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM