Python 3.x 我的for循环没有遍历所有可能的值
我正在尝试将字母的子字符串存储在列表中按字母顺序排列的“s”中Python 3.x 我的for循环没有遍历所有可能的值,python-3.x,Python 3.x,我正在尝试将字母的子字符串存储在列表中按字母顺序排列的“s”中 s = 'azcbobobegghakl' string = '' List = [] i = -1 for letter in s: if letter == s[0]: string += letter elif letter >= s[i]: string += letter elif letter < s[i]: List.append
s = 'azcbobobegghakl'
string = ''
List = []
i = -1
for letter in s:
if letter == s[0]:
string += letter
elif letter >= s[i]:
string += letter
elif letter < s[i]:
List.append(string)
string = letter
i += 1
print(List)
s='azcbobebeghakl'
字符串=“”
列表=[]
i=-1
对于字母s:
如果字母==s[0]:
字符串+=字母
elif字母>=s[i]:
字符串+=字母
elif字母
我的预期结果:
['az','c','bo','bo','beggh','akl']
以及我的实际产出:
['az','c','bo','bo']
首先,您的第一个
if
语句不正确。如果i==-1:,则应为。由于此错误,您将忽略s
中的第二个a
字符
其次,在字符串的末尾,您不会将字符串的剩余部分添加到列表中
因此,以下是您想要的:
s = 'azcbobobegghakl'
string = ''
List = []
i = -1
for letter in s:
if i == -1:
string += letter
elif letter >= s[i]:
string += letter
elif letter < s[i]:
List.append(string)
string = letter
i += 1
List.append(string)
print(List)
s='azcbobebeghakl'
字符串=“”
列表=[]
i=-1
对于字母s:
如果i==-1:
字符串+=字母
elif字母>=s[i]:
字符串+=字母
elif字母
有一个例子。我还想提一下,List
在命名他的变量时是一种不好的做法,它不影响List
类型,但我仍然要提到它。除此之外,好的洞察力!这是一个公平的观点。我相信在这段代码上会有更多的话要说。非常感谢。我真的很感激this@MukhtarAgboola如果此解决方案回答了您的问题,请接受回答,这可能有助于将来有相关问题的人: