像交互式Ruby一样的交互式Python?

像交互式Ruby一样的交互式Python?,python,ruby,Python,Ruby,我试图在Python中加载一个“.py”文件,就像在交互式Ruby中加载“.rb”文件一样。该文件运行一段代码,要求输入用户名,然后打印“Hello(用户名),welcome!”。我找遍了,但找不到解决办法 我知道如何在Ruby中实现这一点,但如何在Python中实现这一点 Ruby代码(test.rb) Python代码(test.py) 如何在交互式ruby(irb)中运行它 那么在python中如何实现同样的功能呢? 您只需在python解释器中说导入文件名,就会对您有所帮助。然后fil

我试图在Python中加载一个“.py”文件,就像在交互式Ruby中加载“.rb”文件一样。该文件运行一段代码,要求输入用户名,然后打印“Hello(用户名),welcome!”。我找遍了,但找不到解决办法

我知道如何在Ruby中实现这一点,但如何在Python中实现这一点

Ruby代码(test.rb)

Python代码(test.py)

如何在交互式ruby(irb)中运行它

那么在python中如何实现同样的功能呢?


您只需在python解释器中说
导入文件名
,就会对您有所帮助。然后
file\u name.function\u to\u run()

在Python3中,
execfile
可能已被删除,因为这通常不是推荐的工作方式。您可以这样做,但更常见的工作流是直接运行脚本:

python test.py
或者将test.py文件作为模块导入

import test
然后,您可以执行
reload(test)
以在后续编辑中加载,尽管由于各种原因,这比每次重新运行
python test.py
要可靠得多

这假设
test.py
位于
PYTHONPATH
(或
sys.path
)上的一个目录中-通常您的shells当前文件夹已添加到您正在使用的python 3中

你是这样做的

name=输入(“输入您的姓名:”)

打印(“你好”+name+”。欢迎使用Python!”)

从命令行 您可以使用
-i
选项进行“交互”。它不会在脚本完成时关闭,而是提供一个python解释器,您可以从中使用脚本定义的变量

python -i test.py
口译员内部 使用
exec

exec(open("test.py").read())

.

阅读有关Python中导入模块的内容。这是如何回答问题的??
python -i test.py
exec(open("test.py").read())