为啥调用 python 列表的 [-1] 会给出这个输出? [复制]

Posted

技术标签:

【中文标题】为啥调用 python 列表的 [-1] 会给出这个输出? [复制]【英文标题】:Why does calling [-1] of a python list give this output? [duplicate]为什么调用 python 列表的 [-1] 会给出这个输出? [复制] 【发布时间】:2020-01-13 23:35:29 【问题描述】:

这可能是一个理论问题,但请多多包涵。为什么这个 Python 代码会产生这个输出?

content = ['abc', 'def', 'ghi', 'jkl', '\n.']
print(content[-1])

输出是:


.

. 为什么会出现?为什么没有错误?

【问题讨论】:

【参考方案1】:

Python 列表可以用负数索引,-1 表示最后一个元素,-2 表示倒数第二个元素,依此类推。

特别是对于这个例子,content[-1] 指的是'\n.'。字符'\n' 是一个空白字符,它创建一个新行。因此,您的打印语句输出一个新行,后跟句点。

【讨论】:

是的,但我的列表中没有 . 项目。为什么是输出? 列表中的最后一项是'\n.',这是一个换行符后跟一个点。 尝试在您的打印语句之前添加一个 print("----")。您应该在 ---- 和点之间看到一个空行

以上是关于为啥调用 python 列表的 [-1] 会给出这个输出? [复制]的主要内容,如果未能解决你的问题,请参考以下文章