新Python'er有一個問題「舉手」。將文件作爲參數傳遞給兩個Python腳本
我有兩個Python腳本和一個XML文件。 「mysecondpython.py」需要用「data.xml」參數調用「myfirstpython.py」,以便它可以寫入一些內容,然後返回一個文件。
從命令行,我應該輸入python mysecondpython.py
,它應該是中提琴!但我沒有雪茄。這個新python'er做錯了什麼?
myfirstpython.py
import xml.etreeElementTree as et
def allmytrees(file):
dest_tree = et.parse(file)
dest_root = dest_tree.getroot()
def inserter():
dest_root.insert(0, "hello world")
def printer():
dest_tree.write('out.xml', xml_declaration=True, encoding='utf-8')
if __name__ == "__main__":
allmytrees(file)
inserter()
printer()
mysecondpython.py
import myfirstpython
def callingscripts(file)
callpython = myfirstpython(file)
if __name__ == "__main__":
file = "data.xml"
callingscripts(file)
data.xml中
<root>
<nothing-here>123</nothing-here>
</root>
我流淚了。
我還不確定你的意思。我被告知我需要在myfirstpython.py中有'if __name__ =='__main __「:'。假設mysecondpython.py是將文件傳遞給myfirstpython.py的「main」程序。 – misterbear
如果你打算從命令行運行myfirstpython,只需在myfirstpython中使用該語句。該聲明的主體是當你這樣做時將會運行的內容。這是身體運行的唯一時間。但是,在這裏描述的情況下,您正在從命令行運行mysecondpython。因此,您在myfirstpython中放入該塊的內容不會運行。 – GreenAsJade