python - 如何在 VSCode 中整体执行 python 函数(它拆分并仅将第一行发送给解释器)

标签 python visual-studio-code pycharm execution

由于 LiveShare 功能,我已经习惯在日常数据科学远程工作流程中使用 VSCode。

因此,在执行函数时,它只执行第一行代码;如果我标记整个区域那么它确实有效,但这是处理问题的麻烦方式。

我尝试了很多扩展,但似乎没有一个能解决问题。

def gini_normalized(test, pred):
    """Simple normalized Gini based on Scikit-Learn's roc_auc_score"""
    gini = lambda a, p: 2 * roc_auc_score(a, p) - 1
    return gini(test, pred)

执行函数的开头会导致错误:

def gini_normalized(test, pred):...
  File "", line 1
    def gini_normalized(test, pred):
                                    ^
SyntaxError: unexpected EOF while parsing

PyCharm 有一个解决方案:Python Smart Execute - https://plugins.jetbrains.com/plugin/11945-python-smart-execute . Atom's Hydrogen 也没有这样的问题。

关于 VSCode 有什么想法吗?

谢谢!

最佳答案

我是 VSCode DataScience 功能的开发人员。只是为了确保我理解正确。如果您在函数定义上运行它,您希望 shift-enter 命令将整个函数发送到交互窗口吗?

如果是这样,那么是的,我们目前不支持它。 Shift-enter 可以逐行运行或运行您手动突出显示的一段代码。如果需要,您可以在代码中使用 #%% 行将函数放入代码单元中。然后,当您在单元格中时,shift-enter 将运行整个单元格,这可能是目前最适合您的方法。

智能执行看起来确实很有趣,如果您想将其作为建议归档,您可以在此处使用我们的 GitHub 将其添加到我们的待办事项列表中以供查看。 https://github.com/Microsoft/vscode-python

关于python - 如何在 VSCode 中整体执行 python 函数(它拆分并仅将第一行发送给解释器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57493434/

相关文章:

python - 在 Windows 上的 Python 中获取和设置环境变量

python - VSCode远程SSH : Run Python File in New Terminal

pycharm - 如何在 PyCharm 的 Python 控制台中向上/向下翻页?

python - pycharm - 将命令发送到 python 控制台时在编辑器中保持焦点

python - 将 float 舍入为 n 位,忽略前导零并保留它们

python - 从 json 创建的 Pandas 数据框具有未命名列 - 由于未命名列问题无法插入 MySQL

typescript - 如何设置 typescript 编译器 (tsc) 的默认目标 es 版本?

python - 如何在本地和真实的 Linode 服务器(或类似服务器)上使用 virtualenv 设置 Python?

python - ffmpeg:同时覆盖和连接文件

python - 没有名为 pipreqs.__main__ 的模块; 'pipreqs' 是一个包,不能直接执行