为啥调用 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] 会给出这个输出? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
Python append() 与列表上的 + 运算符,为啥这些会给出不同的结果?
为啥在测试数据上调用 transform() 会给出数据尚未拟合的错误?