创建
s1 = 'lenovo'
s2 = "QF"
s3 = """hello lenovo"""
s4 = '''hello 千锋云计算'''
s5 = """hello
shark
"""
s6 = '''hello
world'''
简单操作
\
转义符
testimony = 'This shirt doesn\'t fit me'
words = 'hello \nshark'
+
拼接
>>> s1 = "lenovo"
>>> s2 = 'good'
>>> s = s1 + " " + s2 + "\n"
>>> s
'lenovo good\n'
>>> print(s)
lenovo good
>>>
不可以用 字符串和 一个非字符串类型的对象相加
'lenovo' + 1 # 这会报错的
*
复制
>>> print('*' * 10)
**********
>>> print('lenovo 666 -->\n' * 6)
lenovo 666 -->
lenovo 666 -->
lenovo 666 -->
lenovo 666 -->
lenovo 666 -->
lenovo 666 -->
>>>
进阶操作
字符串 是 Python 中的一个 序列类型 的数据结构
-
存放的数据,在其内是有序的,内部的数据是可以通过在其
内部所处的位置进行访问等操作。
序列类型的特点
-
序列里的每个数据被称为序列的一个元素
-
元素在序列里都是有个自己的位置的,这个位置被称为索引或
者叫偏移量,也有叫下标的
-
下标索号好从
0
开始的 -
序列中的每一个元素可以通过这个元素的索引号来获取到
-
获取序列类型数据中的多个元素需要用切片的操作来获取到
s1 = "shark"
![](https://img.haomeiwen.com/i11414906/8711bcb10e7b051d.png)
获取元素
# 获取单个元素
s1[0]
s1[3]
s1[-1]
切片
![](https://img.haomeiwen.com/i11414906/6bf9ad8b3200f291.png)
# 使用切片获取多个元素
>>> s1[0:2]
'le'
# 起始和结尾的索引号可以不写
>>> s1 = "lenovo"
>>> s1[:]
'lenovo'
>>> s1[4:]
'vo'
>>> s1[:-1]
'lenov'
>>>
下面这样的操作,臣妾做不到
>>> s1[-1:-3]
''
>>>
因为从左向右开始操作, 索引号
-1
的右边没有任何索引号了
-3
在-1
的左边
# 获取字符串的长度,包含空格和换行符
>>> n = len(s1)
>>> n
6
>>>
利用字符串对象的方法
- split 分割
默认使用 空格或者 Tab 间做为分隔符
>>> url = '千锋官网 www.qfedu.com'
>>> url.split()
['千锋官网', 'www.qfedu.com']
可以指定分隔符
>>> ip = '192.168.1.100'
>>> ip.split('.')
['192', '168', '1', '100']
rsplit 从右向左分割
>>> ip.rsplit('.', 1)
['192.168.1', '100']
>>>
上面
split('.', 1)
中的第二参数1
,表示 找到第一个分隔符.
,就结束。
replace 替换
>>> url = 'www.qfedu.com'
>>> url2 = url.replace('.', '_')
>>> url
'www.qfedu.com'
>>> url2
'www_qfedu_com'
strip 移除字符串两端的空白字符
>>> s = ' shark '
>>> s
' shark '
>>> s.strip()
'shark'
>>>
startswith 判断字符串以什么为开头
>>> s = 'lenovo'
>>> s.startswith('l')
True
>>> s.startswith('le')
True
endswith 判断字符串以什么为结尾
>>> s.endswith('o')
True
>>> s.endswith('vo')
True
>>>
交互输入
![](https://img.haomeiwen.com/i11414906/46a0406a8570a4a6.png)
python2.x 中使用
raw_input(">>:")
特殊的情况
注意: 空字符串总是被视为任何其他字符串的子串,因此
"" in "abc"
将返回True
。
网友评论