我试图加载" .py" Python中的文件,就像我使用" .rb"交互式Ruby中的文件。该文件运行一个代码,询问用户的姓名,然后打印" Hello(用户名),欢迎!"。我已经搜遍过,但我找不到解决办法。
我知道如何在Ruby中执行此操作,但我如何在Python中执行此操作?
Ruby代码(test.rb)
print "Enter your name:"
input = gets.chomp
puts "Hello " + input + "! Welcome to Ruby!"
Python代码(test.py)
name = raw_input("What is your name? ")
print ("Hello" + (name) + "Welcome to Python!")
我如何在交互式红宝石(irb)中运行
那我怎么在python中做同样的事呢?
答案 0 :(得分:3)
在Python 2中,execfile("test.py")
与Ruby load "test.rb"
在Python 3中execfile
已被删除,因为这通常不是推荐的工作方式。您可以执行exec(open("test.py").read())
,但更常见的工作流程是直接运行脚本:
python test.py
或import
将test.py文件作为模块
import test
然后您可以reload(test)
加载后续编辑内容 - 虽然这比每次因各种原因重新运行python test.py
更可靠
这假定test.py
位于您PYTHONPATH
(或sys.path
)的目录中 - 通常已添加您的shell当前文件夹
答案 1 :(得分:1)
您正在使用python 3
所以你这样做
name = input(“输入你的名字:”)
print(“Hello”+ name +“。欢迎使用Python!”)
答案 2 :(得分:1)
您可以将-i
选项用于“交互式”。脚本执行完毕后,您无需关闭脚本,而是会提供一个python解释器,您可以从中使用脚本定义的变量。
python -i test.py
使用exec
exec(open("test.py").read())
答案 3 :(得分:0)
你只是说python解释器this中的import file_name
可以帮助你。然后file_name.function_to_run()
当然,如果你在脚本底部有函数调用它将执行所有操作然后停止,你不必执行此步骤。