簡體   English   中英

從.BAT文件運行Python腳本,將.BAT文件名作為輸入

[英]Running Python script from .BAT file, taking .BAT Filename as input

我有一個Python腳本(test1.py),我需要使用bat文件(render.bat)運行。

問題1:

首先,我在test1.py中有一個定義,它始終無法運行,什么也沒發生。 有人可以解釋一下原因嗎?

import os
def test01 :
   os.system('explorer')

並在bat文件中:

python c:/test01.py

但是,一旦我刪除了def,它就會起作用。 我只想了解為什么會這樣。

問題2:

如何將render.bat中的“ render”字符串作為python腳本的字符串輸入,這樣我可以運行類似以下內容的代碼:

import os
def test1(input) :
   os.system("explorer " + input) 

因此,“輸入”取自.BAT文件名?

  1. 除非您調用函數,否則函數實際上不會執行任何操作。 嘗試將test01()放在腳本的末尾。

  2. %0將為您提供名為.bat的批處理文件的名。 在Python中剝離它可能比在批處理文件中更容易。

問題1: python中的關鍵字def定義了一個函數。 但是,要使用函數,您必須顯式調用它,即

import os
def test01(): # do not forget ()
   os.system('explorer')

test01() # call the function

1)您必須實際call函數才能完成任務。

2) %0是指正在運行的腳本。 test.bat file創建一個test.bat file例如

@ echo off
echo %0

輸出= test.bat

您可以從輸出中刪除.bat擴展名。

暫無
暫無

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

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