Python 的 IDE 一行中有多少字符限制?

Any limit to how many characters Python's IDE can take in one line?

我有点好奇,因为我想创建一个包含字典的文件,该字典会在事件发生时自动更新,并且需要知道字符数是否有限制Python's IDE 可以保持在一条线上。

对我来说,另一种选择是至少知道一种方法,使字典在达到一定长度时始终从新行开始。但我还是想知道是否有限制只是为了知道。

您不必担心限制。至于新行,您可以使用 if\nfor 循环,具体取决于您的目的。

要回答您的问题,不,字典或列表(或任何其他对象)的长度没有限制。我已经将整本书的所有单词存储在一个列表中。它们只是输入流。

就您的代码编写方式而言,每行超过 80 characters/columns 就不是 Pythonic,因为最终,人类必须阅读它。

但如果它让你感觉更好,你可以将字典和列表分成多行,甚至在项目之间留下评论:

>>> my_dict = {'a': 1,  # comment 1
               'b': 2,  # comment 2
               'c': 3,  # comment 3
               'd': 4
              }

您还可以使用反斜杠来分隔任何语句:

>>> my_string = "my \
                   string"

>>> print(my_string)
'my string'

最后,您可以对可能跨越多行的很长的字符串使用三重引号。请注意,换行符将包含在您的字符串中。

>>> my_very_long_string = '''This is a long string.
                   Rather than using multiple print statements,
                   I only used one.'''

>>> print(my_very_long_string)
'This is a long string.\nRather than using multiple print statements,\nI only used one.'

在最后一个(multi-line 字符串)示例中,这是 "file"(流)在未格式化为在编辑器中以多行显示时的实际外观。

就磁盘存储和内存而言,'\n只是另一个字符。就 tcl/tk 和 Python 的 tkinter 包装器而言,换行符非常重要。由于 tk 的 Text 小部件旨在向人类显示文本,并且由于垂直滚动对此比水平滚动更有用,因此它针对前者进行了优化。一百个 1000 个字符行(总共 100,000 个字符)会阻碍垂直滚动,而 300,000 个 50 个字符行(总共 15,000,000 个字符)没有问题。 IDLE使用tkinter,主要windows是基于tk的Text widget。因此,如果您要在 IDLE 中查看文本,请保持合理的行长。

我不知道使用其他 GUI 框架的其他 IDE。但是,即使他们能更好地处理无限长的行,水平滚动 100000 个字符的行也是相当令人讨厌的。