学生在这里学习Python3。
我目前的代码是:
from read_lines import read_lines
storedstrings = read_lines()
print(storedstrings)
ci = 0
contin = True
while contin:
if ci > len(storedstrings):
contin = False
else:
storedstrings = storedstrings[0]
ci = ci + 1
print(ci, storedstrings)
但是当我运行它时,我的结果是:
[vbox]~/CSE1010/HW4$ python3 loop.py
abc
def
ghi
['abc', 'def', 'ghi']
1 abc
2 a
[vbox]~/CSE1010/HW4$
我似乎无法正确地获得第二或第三个索引,尽管第一个索引很好。
感谢任何帮助。
谢谢你们的时间!
答案 0 :(得分:1)
问题是storedstrings = storedstrings[0]
。
您正在获取第一个字符串,并将其指定为相同的名称。因此,下次storedstrings[0]
发生时,您将获得第一个字符串的第一个字符。你想要做的是:
string = storedstrings[ci]
使用for循环和enumerate()会更容易,而不是使用while循环。然后就会这么简单:
for i, string in enumerate(storedstrings, start=1):
print(i, string)
输出:
1 abc
2 def
3 ghi