在Python中打印字符串的特定部分
这个问题在这里已经有了答案:
我会尝试猜测预期的结果:
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
语句打印列表中的每个项目。
上一篇: Printing specific parts of a string in python
下一篇: How can I remove the last character of a string in python?