在Python中打印字符串的特定部分

这个问题在这里已经有了答案:

  • 有没有办法在Python中对字符串进行子串处理? 10个答案

  • 我会尝试猜测预期的结果:

    def printThree(str):
        for i in range(0, len(str), 3):
            print str[i:i+3]
    

    产量

    >>> printThree("somestring")
    som
    est
    rin
    g
    

    使用切片:

    def PrintThree(string):
        return string[:3]
    

    这个运行如下:

    >>> PrintThree('abcde')
    'abc'
    >>> PrintThree('hello there')
    'hel'
    >>> PrintThree('this works!')
    'thi'
    >>> PrintThree('hi')
    'hi'
    >>> 
    

    在最后一个例子中,如果长度小于3,它将打印整个字符串。

    string[:3]string[0:3] ,因为它获取任何字符串的前三个字符。 由于这是一个班轮,我会避免为它调用一个函数,很多cuntions在一段时间后会变得混乱:

    >>> mystring = 'Hello World!'
    >>> mystring[:3]
    'Hel'
    >>> mystring[0:3]
    'Hel'
    >>> mystring[4:]
    'o World!'
    >>> mystring[4:len(mystring)-1]
    'o World'
    >>> mystring[4:7]
    'o W'
    >>> 
    

    或者,如果要打印字符串中的每三个字符,请使用以下代码:

    >>> def PrintThree(string):
    ...     string = [string[i:i+3] for i in range(0, len(string), 3)]
    ...     for k in string:
    ...             print k
    ... 
    >>> PrintThree('Thisprintseverythreecharacters')
    Thi
    spr
    int
    sev
    ery
    thr
    eec
    har
    act
    ers
    >>> 
    

    这使用列表理解来分隔每3个字符的字符串。 然后它使用for语句打印列表中的每个项目。

    链接地址: http://www.djcxy.com/p/55113.html

    上一篇: Printing specific parts of a string in python

    下一篇: How can I remove the last character of a string in python?