【发布时间】:2021-06-04 20:23:40
【问题描述】:
Guido van Rossum tweeted:
Python 提示:您可以将多行字符串用作多行 cmets。 除非用作文档字符串,否则它们不会生成任何代码! :-)
下面的多行字符串在不用作 docstring 时是否会占用一些内存空间?
'''
Hello, folks!
This is a multi-line string.
'''
【问题讨论】:
-
多行字符串是普通字符串。字符串占用内存。
-
@khelwood 这是 Guido 的推文:Python 提示:您可以将多行字符串用作多行 cmets。除非用作文档字符串,否则它们不会生成任何代码! :-) 如果他们不生成字节码,他们将如何占用内存空间?这是我不明白的。
-
@SanjayRaut 看到我的回答,但 TLDR:cmets(和多行 cmets)不生成代码,它们只在您的源文件中!
-
@A.D 但是Python中不存在真正意义上的多行cmets。
-
@snakecharmerb 这并不严格,例如代码
"bar" + x不包含对任何变量的赋值,但字符串"bar"出现在编译的代码对象中。字符串根本不能在另一个表达式或语句中使用,赋值语句只是一种可能性。
标签: python python-3.x space multilinestring