[英]How to run Python file in another python file?
我試圖在此詞法分析器中運行另一個 python 文件,但它不工作。 誰能幫我?
我正在使用這段代碼: https://github.com/huzaifamaw/Lexical_Analyzer-Parser_Implemented-in-Python/blob/master/main.py
它說我可以通過更改 blankvar 輸入我自己的文件,這是我寫的:
filecheck = print("INPUT FILE:\n", hello.py)
運行一個名為 hello.py 的文件——計算其中的詞位。
誰能幫我? 將不勝感激:)
你不能在以下地方使用hello.py
:
filecheck = print("INPUT FILE:\n", hello.py)
如果你想修改現有的程序,你有多種選擇。 最簡單的方法是將此line
中的blank_var
設置為您的程序文本。
這就是我所做的並得到以下 output:
blank_var = "import json\n\ndef foo(): pass\n\ndef bar(n):\n print(n)\n"
給這個 output(不確定ERROR IN START
消息)
INPUT FILE:
import json
def foo(): pass
def bar(n):
print(n)
{'value': 'import', 'LINE_NUMBERS': 1, 'TYPE': 'IDENTIFIER'}
{'value': 'json', 'LINE_NUMBERS': 1, 'TYPE': 'IDENTIFIER'}
{'value': 'def', 'LINE_NUMBERS': 3, 'TYPE': 'IDENTIFIER'}
{'value': 'foo', 'LINE_NUMBERS': 3, 'TYPE': 'IDENTIFIER'}
{'value': '(', 'LINE_NUMBERS': 3, 'TYPE': 'LL_BRACKET'}
{'value': ')', 'LINE_NUMBERS': 3, 'TYPE': 'RL_BRACKET'}
{'value': ':', 'LINE_NUMBERS': 3, 'TYPE': 'COLON'}
{'value': 'pass', 'LINE_NUMBERS': 3, 'TYPE': 'IDENTIFIER'}
{'value': 'def', 'LINE_NUMBERS': 5, 'TYPE': 'IDENTIFIER'}
{'value': 'bar', 'LINE_NUMBERS': 5, 'TYPE': 'IDENTIFIER'}
{'value': '(', 'LINE_NUMBERS': 5, 'TYPE': 'LL_BRACKET'}
{'value': 'n', 'LINE_NUMBERS': 5, 'TYPE': 'IDENTIFIER'}
{'value': ')', 'LINE_NUMBERS': 5, 'TYPE': 'RL_BRACKET'}
{'value': ':', 'LINE_NUMBERS': 5, 'TYPE': 'COLON'}
{'value': 'print', 'LINE_NUMBERS': 6, 'TYPE': 'IDENTIFIER'}
{'value': '(', 'LINE_NUMBERS': 6, 'TYPE': 'LL_BRACKET'}
{'value': 'n', 'LINE_NUMBERS': 6, 'TYPE': 'IDENTIFIER'}
{'value': ')', 'LINE_NUMBERS': 6, 'TYPE': 'RL_BRACKET'}
{'value': '$', 'LINE_NUMBERS': 7, 'TYPE': 'EOF'}
ERROR IN START
您還有其他選項,例如在 arguments 中傳遞文件路徑或從文件位置讀取,但這需要進行一些修改,因為原始程序不容易使用。
例如:
with open("my/file.py", "r") as f:
blank_var = f.read()
所以我實際上想出了如何讓另一個文件運行。
對於和我有同樣問題的人,這是我使用的代碼:
file = open("happy.py")
blank_var= file.read()
print("INPUT FILE:\n", blank_var)
!!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.