繁体   English   中英

在Python中是否有用于格式化的键盘快捷键?

[英]Are there any keyboard shortcuts for formatting in Python?

在Matlab中编写代码后,我们可以使用ctrl+A+ctrl+Ictrl+A+ctrl+J来格式化我们的代码(注释,循环对齐等)。 Python中是否有类似或有用的键盘快捷键?

另外,就像我们可以使用向上箭头在Matlab中复制我们之前的命令窗口历史记录一样,是否有可能或某些键盘快捷键在Python中执行此操作?

谢谢!

Python是一种编程语言,而不是集成开发环境(IDE),因此它没有“键盘快捷键”等。 每个给定的开发环境可以提供不同的设施等。 您似乎将GNU Readline(通常在许多Python可执行文件捆绑的简单文本模式解释器环境中使用)视为“Python的一部分” - 但这是一种误解; readline是一个完美的通用库,用于在命令行环境中进行交互式输入,而Python只是使用它的众多程序中的一个。 通常与Python捆绑在一起的另一个环境是IDLE ,一个GUI,当然编辑工具完全和完全不同。 有许多第三方环境,例如“Wing IDE”,每个环境都提供了与其他所有环境截然不同的编辑功能和设施。

总结一下:你的问题对于Python本身而言比对C,Java,或任何其他编程语言更有意义。 不要让捆绑式IDE附带的(通常是专有的)编程语言让您对此主题感到困惑!

如果你使用emacs,那么

  1. 你可以在一行的任何地方按Tab键,它会相对于前一行正确缩进该行(假设当前块正在继续)。

  2. 您可以标记文本选择,然后按Cc <Cc >左右移动文本块。

这些是我实际使用的两个规律性。 我确定任何其他编辑器都可以做的事情,emacs也可以做;)

总的来说,格式化python代码对于程序来说很难做,因为缩进会严重影响语义。

考虑

for i, item in enumerate(lst):
    if i % 2:
        sum += i * int(item)
    return sum

for i, item in enumerate(lst):
    if i % 2:
        sum += i * int(item)
return sum

你真的希望你的编辑决定你的意思吗?

如果您使用Python IDLE(在Windows上附带Python,在Linux和Unix版本上可用),大多数格式化工作都是为您完成的。 例如,闲置时自动后缩进循环和任何其他代码块: 这比在gedit,emacs,vim或Notepad等标准文本编辑器中编写Python脚本要好得多,特别是因为您只需按F5即可运行脚本。

对于以前的命令,Python shell的最大缺点是你不能按向上箭头来获取最后一个命令。 但是,如果您使用非GUI shell(在Windows命令提示符或Unix终端中,命令是python ),您可以使用shell的命令调用来获取最后一个命令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM