利用runpy_run_code()方法实现Python命令行工具
发布时间:2024-01-17 08:27:31
Python中的runpy.run_code()方法允许您在命令行中执行Python代码。它可以帮助开发者在一个脚本或模块内动态地运行代码块,而不需要额外的外部脚本。
下面是一个使用runpy.run_code()方法的示例,它可以作为一个简单的Python命令行工具来运行用户输入的代码:
import runpy
def run_python_code(code):
try:
compiled_code = compile(code, '<string>', 'exec')
runpy.run_code(compiled_code, {})
except SyntaxError as e:
print(f"SyntaxError: {e}")
except Exception as e:
print(f"Error: {e}")
if __name__ == "__main__":
print("Welcome to the Python Command Line Tool!")
print("Enter 'exit' to quit.")
code = ""
while code != "exit":
code = input(">>> ")
if code != "exit":
run_python_code(code)
这个脚本创建了一个简单的命令行工具,它会一直等待用户输入代码。用户可以输入任何合法的Python代码,并通过按Enter键来执行该代码。工具将捕捉并显示任何语法错误或其他异常。
这里有一些可能的输入示例及其运行结果:
示例1:
>>> print("Hello, World!")
Hello, World!
示例2:
>>> x = 5 >>> print(x * 2) 10
示例3:
>>> y = [1, 2, 3] >>> for num in y: ... print(num) ... 1 2 3
示例4:
>>> a = 10 >>> b = "abc" >>> c = a + b Error: unsupported operand type(s) for +: 'int' and 'str'
除了运行Python代码之外,您还可以在run_python_code()函数中添加其他您需要执行的操作,以创建一个更复杂的命令行工具。
这只是一个简单的示例,帮助您了解如何使用runpy.run_code()方法来创建Python命令行工具。您可以根据自己的需求进行修改和扩展。
