这条python线是什么意思?

Atl*_*las 2 python syntax

abc = [0, ] * datalen;
Run Code Online (Sandbox Code Playgroud)

" datalen"是一个Integer.

然后我看到像这样的引用:

abc[-1]
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

nos*_*klo 8

创建一个包含datalen对象引用的列表0:

>>> datalen = 10
>>> print [0,] * datalen
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Run Code Online (Sandbox Code Playgroud)

你真的不需要那里的逗号:

>>> print [0] * datalen
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Run Code Online (Sandbox Code Playgroud)

  • 值得指出的是,如果它是一个元组,你*将*需要逗号:`(0,)*5`是`(0,0,0,0,0)`而`(0)*5`是'0`. (3认同)

Krz*_*icz 5

正如其他人所说的那样,[0]*n会给你一个n个零的列表,带有负数的索引用[-k]给出最后的第k个元素,如:


a[-1]
Run Code Online (Sandbox Code Playgroud)

给出序列的最后一个元素


a[-3]
Run Code Online (Sandbox Code Playgroud)

给出序列的第三个最后一个元素.