我如何访问指数,同时在一个序列上以一个为旋转的序列?
xs = [8, 23, 45]
for x in xs:
print("item #{} = {}".format(index, x))
所需的产量:
item #1 = 8
item #2 = 23
item #3 = 45
我如何访问指数,同时在一个序列上以一个为旋转的序列?
xs = [8, 23, 45]
for x in xs:
print("item #{} = {}".format(index, x))
所需的产量:
item #1 = 8
item #2 = 23
item #3 = 45
当前回答
您可以使用范围(len(some_list)) 然后查看此类指数
xs = [8, 23, 45]
for i in range(len(xs)):
print("item #{} = {}".format(i + 1, xs[i]))
或者使用Python的内置列表功能,允许您在列表上滚动并获取列表中的每个项目的指数和值。
xs = [8, 23, 45]
for idx, val in enumerate(xs, start=1):
print("item #{} = {}".format(idx, val))
其他回答
根据此讨论:对象列表指数
Loop 对抗 iteration
在指标上旋转的当前字符串使用内置范围功能:
for i in range(len(sequence)):
# Work with index i
超越两个元素和指标可以通过旧的字符或使用新的内置Zip功能实现:
for i in range(len(sequence)):
e = sequence[i]
# Work with index i and element e
或
for i, e in zip(range(len(sequence)), sequence):
# Work with index i and element e
通过PEP 212 - Loop Counter Iteration。
您可以使用指数方法:
ints = [8, 23, 45, 12, 78]
inds = [ints.index(i) for i in ints]
在评论中强调,如果在英寸中有重复,这种方法不会工作,下面的方法应该为英寸中的任何值工作:
ints = [8, 8, 8, 23, 45, 12, 78]
inds = [tup[0] for tup in enumerate(ints)]
或替代
ints = [8, 8, 8, 23, 45, 12, 78]
inds = [tup for tup in enumerate(ints)]
如果你想得到指数和值在英寸作为列表的<unk>。
它使用列表方法在这个问题的选择答案,但与列表理解,使它更快的代码较少。
您可以使用范围(len(some_list)) 然后查看此类指数
xs = [8, 23, 45]
for i in range(len(xs)):
print("item #{} = {}".format(i + 1, xs[i]))
或者使用Python的内置列表功能,允许您在列表上滚动并获取列表中的每个项目的指数和值。
xs = [8, 23, 45]
for idx, val in enumerate(xs, start=1):
print("item #{} = {}".format(idx, val))
单线爱好者:
[index for index, datum in enumerate(data) if 'a' in datum]
解释:
>>> data = ['a','ab','bb','ba','alskdhkjl','hkjferht','lal']
>>> data
['a', 'ab', 'bb', 'ba', 'alskdhkjl', 'hkjferht', 'lal']
>>> [index for index, datum in enumerate(data) if 'a' in datum]
[0, 1, 3, 4, 6]
>>> [index for index, datum in enumerate(data) if 'b' in datum]
[1, 2, 3]
>>>
要采取的点:
Python 列表不提供指数; 如果您正在使用,如果您列表列表,它将返回您 ANOTHER 列表 但是该列表将有不同的类型,它将包含每一个和每个元素的指数,如<unk>,我们可以访问<unk>,如变量,分为 comma(,)
谢谢你!请在你的祷告中保持我。
除了上述所有优秀的答案之外,这里还有解决这个问题的解决方案,当与Pandas系列对象一起工作时。在许多情况下,Pandas系列有自定义/独特的指标(例如,独特的识别线),无法通过列出的()函数访问。
下面我们可以看到,列表()不会给我们所需的结果:
id, x in enumerate(xs): print("id #{} = {}".format(id, x)) 输出: # id #0 = 8 # id #1 = 23 # id #2 = 45
我们可以使用.items( ) 访问一个 pandas 系列的指标,以便使用 A for loop:
对于 id, x 在 xs.items(): 打印("id #{} = {}".format(id, x)) 输出: # id #G923002 = 8 # id #G923004 = 23 # id #G923005 = 45