python,一次在字符串中打印特定数量的字符

Python, printing a specific amount of characters in a string at a time

本问题已经有最佳答案,请猛点这里访问。

我试图一次打印出一个字符串的三个字符。我知道

1
2
3
>>> s = 1234
>>> s[0:3]
123

我需要打印整个字符串,但一次只能显示三个字符。

这就是我被问到的问题。编写一个函数print3,它一次打印出三个字符的字符串。请记住,len(s)返回字符串的长度。

我只是需要指导如何做,如果你只是张贴一个代码,请给出一个简短的解释,谢谢!


假设我理解正确,看起来是这样的:

1
2
3
4
5
6
7
8
9
10
11
def PrintThree(s):
    for i in range(0,len(s),3):
        print s[i:i+3]

>>> PrintThree('abcd')
    abc
    d

>>> PrintThree('abgdag')
    abg
    dag

I just need to be guided on how to do so

切片索引是整数。

len(s)将给您一个整数字符串的长度。

可以使用for循环来增加整数。


有很多方法可以实现你的目标。我要去最直接的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
def printThrees(mystring):
    s = ''                # we are going to initialize an empty string
    count  = 0            # initialize a counter
    for item in mystring:  # for every item in the string
        s+=item            #add the item to our empty string
        count +=1          # increment the counter by one
        if count == 3:      # test the value
            print s            # if the value = 3 print and reset
            s = ''
            count = 0
   return


mystring = '123abc456def789'
printThrees(mystring)
123
abc
456
def
789