有人给了我一个截断字符串的语法,如下所示:
string = "My Text String"
print string [0:3] # This is just an example
Run Code Online (Sandbox Code Playgroud)
我不确定这是什么(字符串[0:3]语法),所以我很难在互联网上查找它并理解它是如何工作的.到目前为止,我认为它的工作原理如下:
无论如何,我可以添加一些其他示例,但我的观点是我是这个功能的新手,我想知道它的名称以及我可以在哪里找到更多相关信息.我确定我在某个地方错过了一个很好的参考.
谢谢你的任何建议,迈克
小智 9
正如@Uku和@thebjorn所说的那样叫切片
但是一种更容易思考的方法是将String视为一个列表,例如你可以这样做:
text = 'Any String'
for letter in text:
print letter
Run Code Online (Sandbox Code Playgroud)
如果你想在字符串中得到一个特定的字母,那也是一样的:
>> text = 'Any String'
>> text[4]
'S'
Run Code Online (Sandbox Code Playgroud)
ps:记住它是基于零的,所以text [4]返回第5个字母.
使用Slice它将返回原始String中的"substring"文本[i:j],其中"i"是初始索引(包括),"j"是结束索引(不包括),例如:
>> text = 'Any String'
>> text[4:6] # from index 4 to 6 exclusive, so it returns letters from index 4 and 5
'St'
>> text[0:4]
'Any '
>> text[:4] # omiting the "i" index means i = 0
'Any '
>> text[4:] # omitting the "j" index means until the end of the string
Run Code Online (Sandbox Code Playgroud)
负索引相对于String的结尾,例如从负索引替换为"len(text)+ i".
在我们的情况下,len(text)是10,负索引-1就像使用text [9]来获取最后一个元素,-2将返回最后一个元素,依此类推.
在您发送的示例中,字符串[0:-3]应返回除最后3个字符之外的所有内容,字符串[3:-3]应返回除前3和后3之外的所有内容.
希望它有所帮助.
| 归档时间: |
|
| 查看次数: |
60430 次 |
| 最近记录: |