我使用Emacs python-mode和ipython作为我的IDE来编写python代码。 Python模式提供了一个很好的功能" py-execute-line"运行一行代码,并将其绑定到键#F;"。
所以对于以下代码:
cell = "Human" # Move the cursor to this line and run it by pressing F7
print cell # Move the cursor to this line and run it by pressing F7
我可以在ipython缓冲区中打印输出。
In [80]:
In [81]: Human
我想知道是否有更直接的方法来检查" cell"没有打印命令。像将光标移动到变量,按某个键,然后在ipython输出缓冲区中打印值。
cell = "Human" # Move the cursor to this line and run it by pressing F7
cell = "Human" # Move the cursor to "cell" and print its value by pressing ?? key or function
我尝试过函数(py-execute-expression-ipython),但是没有输出打印...
提前致谢!
答案 0 :(得分:0)
不完全是您想要的,但您可以突出显示某个区域(按C-SPC
激活标记并移动到该区域的另一侧),然后键入M-|
以运行{{1 }}。然后只需键入shell-command-on-region
即可在该区域上运行Python。
例如,选择以下两行:
python RET
然后输入message = "Hello, Stack Overflow!"
print message
。 “你好,Stack Overflow!"将在屏幕底部显示为消息。您可以使用任何shell命令在任何模式下执行此操作。另见:Shell Commands。
答案 1 :(得分:0)
可能会在
处考虑功能请求答案 2 :(得分:0)
在不突出显示的情况下,我使用:
(defun python-eval-expression ()
(interactive)
(let ((py-command (read-string "Command: ")))
(save-excursion
(setq elpy-shell-echo-output t)
(setq elpy-shell-echo-input t)
(elpy-shell--with-maybe-echo (python-shell-send-string py-command)))))
应该易于调整以选择当前选择(如果存在)(使用