Python的点点滴滴一 字符串
2019-04-19 本文已影响0人
卖梦为生_若愚
一些觉得很简单的东西,时间久了也就忘了,忘了和没学也就差不多。最近时间比较充足,总结一下。想到哪写到哪。估计排版会有点乱。。。
字符串的表示
在交互式解释器中,输出的字符串外面会加上引号,特殊字符会使用反斜杠来转义。
单双引号都可以表示字符串,一般如果字符串中包含有单引号而没有双引号(比如"I'm RuoYu"),用双引号来表示,否则就加单引号('I am RuoYu')。
特殊字符需要使用转义字符(\),否则会报错
>>> print('"I\'m RuoYu,"I said')
如果不希望前置了 \
的字符转义成特殊字符,可以在字符串引号前添加 r
即可:
>>> print(r'"I\'m RuoYu,"I said')
跨行连续输入。一种方式是用三重引号:"""..."""
或 '''...'''
。字符串中的回车换行会自动包含到字符串中,如果不想包含,在行尾添加一个 \
即可
用“+”号连接字符串(但是不可以像Java那样连接数字和字符串,虽然Java这样写也不规范)
字符串索引和切片
索引获取某个字符,切片获取索引区间内的字符串
索引:
#第一个字符索引是 0,索引也可以用负数,这种会从右边开始数:
****注意:****
-0 和 0 是一样的,所以负数索引从 -1 开始
切片
>>> str='I\'m RuoYu'
注意:
切片的开始总是被包括在结果中,而结束不被包括。这使得 str[:i] + str[i:]
总是等于 str
>>> str='I\'m RuoYu'
字符串的越界问题
索引越界:
>>> str[1024]
切片越界:
>>> str[0:1024]
由上面的两段代码看到:
索引越界会报错,但切片越界会被自动处理,取字符串最后一位
字符串的修改问题
Python字符串不能被修改,它们是 immutable 的。因此,向字符串的某个索引位置赋值会产生错误:
>>> str[2]='haha'
如果需要一个不同的字符串,应当新建一个.....emmmmmm........