我是python的初学者,我的任务让我有点头疼。
我的任务是:
编写一个程序,按照从a-z的顺序打印字母表的字符串。鉴于字符串&acecikmoqsuwy'和' bdfhjlnprtvxz'使用for循环中的range函数创建第三个字符串。使用累加器创建第三个字符串。
我真的不明白如何使用累加器和范围功能......我已经查看了我的导师提供的说明,但他们并不是很清楚。
到目前为止,我有 -
#Alphabet code
s1 = 'acegikmoqsuwy'
s2 = 'bdfhjlnprtvxz'
s3 = list.sort([s3])
print(s3)
答案 0 :(得分:2)
"累加器"是一个变量,它保存使用循环完成的计算的临时结果。例如,要对整数列表求和,可以将累加器变量设置为零,然后使用循环将列表中的每个整数添加到累加器。循环结束后,累加器的值就是列表的总和。
在您的问题中,s1
包含字母表中的第1,第3,第5,第7 ......字母,而s2
包含第2,第4,第6,第8 ......字母。您可以通过s1
中的第一个字母后跟s2
中的第一个字母,然后在s1
中添加第二个字母,然后在{{1}中添加第二个字母来构建整个字母表。然后......所以我们可以使用累加器一次添加一个字母。
s2
函数的整数低于range(n)
的值,从n
开始。我们可以将这些整数用作0
和s1
字符串的索引,以便一次获得一个字符。关于s2
可以说更多 - 你应该阅读一个教程以了解更多信息,因为这不是教程的网站。
以下是一些可以满足您需求的代码。请注意,这取决于具有相同长度的两个输入字符串 - 否则会发生错误。我更改了变量名称,使它们更加自我记录。你应该注意到这段代码不是" Pythonic"在使用索引时。有更好的方法可以做到这一点,但他们不使用range()
。
range()
打印结果为字母:
string1 = 'acegikmoqsuwy'
string2 = 'bdfhjlnprtvxz'
accum = ''
for index in range(len(string1)):
accum += string1[index] + string2[index]
print(accum)