我尝试使用单个for循环在字符串上循环以将其打印出来,如下所示:
s u p e r n a t u r a l
u p e r n a t u r a l s
p e r n a t u r a l s u
到目前为止,这是我的代码:
def main():
first_Name = "s u p e r n a t u r a l"
print(first_Name)
for i in range(len(first_Name)):
print(first_Name[i])
main()
答案 0 :(得分:1)
我有4行:
li = list('supernatural')
for c in li:
print ''.join(li)
li.append(li.pop(0))
答案 1 :(得分:0)
In [11]:
S='s u p e r n a t u r a l'
SL=S.split(' ')
for i in range(len(S)-S.count(' ')):
print ' '.join(SL[i:]+SL[:i])
s u p e r n a t u r a l
u p e r n a t u r a l s
p e r n a t u r a l s u
e r n a t u r a l s u p
r n a t u r a l s u p e
n a t u r a l s u p e r
a t u r a l s u p e r n
t u r a l s u p e r n a
u r a l s u p e r n a t
r a l s u p e r n a t u
a l s u p e r n a t u r
l s u p e r n a t u r a
答案 2 :(得分:0)
多么巧合,我在咨询工作中早些时候做了同样的事情!但是说真的,为了让你开始做作业,这里有一些想法:
>>> print first_Name[0:] + ' ' + first_Name[:0]
s u p e r n a t u r a l
>>> print first_Name[1:] + ' ' + first_Name[:1]
u p e r n a t u r a l s
>>> print first_Name[2:] + ' ' + first_Name[:2]
u p e r n a t u r a l s
看起来很有希望,至少是偶数......
如何迭代偶数?
>>> help(range)
step
是你的朋友。
>>> range(0, len(first_Name), 2)
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22]
我打赌你可以(并且应该)弄清楚剩下的。
答案 3 :(得分:0)
一种简单的方法:
#!/usr/bin/env python
def rshift(s, i):
i = i % len(s)
return s[-i:] + s[0:-i]
if __name__ == '__main__':
s = "12345"
for i in range(len(s)):
print rshift(s, -i)
答案 4 :(得分:0)
对我来说,这是为了一个deque
import collections
d = collections.deque('supernatural')
for _ in range(len(d)):
print(' '.join(d))
d.rotate(-1)
打印出来:
s u p e r n a t u r a l
u p e r n a t u r a l s
p e r n a t u r a l s u
e r n a t u r a l s u p
r n a t u r a l s u p e
n a t u r a l s u p e r
a t u r a l s u p e r n
t u r a l s u p e r n a
u r a l s u p e r n a t
r a l s u p e r n a t u
a l s u p e r n a t u r
l s u p e r n a t u r a