我有这个代码:
for i in words:
print i
那个报告'你好'字3次。为什么如果:
for i in words:
print i[0]
报告是 3 次是“h”字而不是 1 次是“你好”字?我应该报告一次“你好”。
以下是您的代码功能的说明:
for i in words:
print i
1. 将列表中的每个元素words作为i
2. 打印这个元素
for i in words:
print i[0]
1. 取列表的每个元素words为i
2. 打印第一个元素i(恰好是字符串,所以打印第一个字母)
要使您的代码hello仅打印一次,您应该执行类似print words[0]打印列表的第一个元素的操作words
您正在寻找的是words[0]:
print words[0]
对 Python 字符串进行索引可为您提供单个字符:
>>> 'hello'[0]
'h'
但您似乎正在寻找索引words列表:
>>> ['hello', 'hello', 'hello'][0]
'hello'
循环执行后者,依次for绑定每个元素,words让循环打印它。i如果只需要打印一个元素,直接使用print即可,不要使用循环。