序列
序列:列表(list),元组(tuple),字典(dict),集合(set),str,range()
有序列表: list,tuple
无序列表: dict,set
可变序列: list,dict,,set
不可变: tuple
str的基本使用和常用操作
字符串的定义
name = "马小跳"
age = "17"
字符串的访问
示例:
s = "python"
print(s[0])
print(s[3])
运行结果:
p
h
范围,切片
示例:
s = "python"
print(s[0:6]) #指定开始和结束
print(s[:]) # 默认从开始到结尾
print(s[2:]) # 从2到结尾,包含2
print(s[:5]) # 从开始到5,不包含5
运行结果:
python
python
thon
pytho
步长
示例:
s = "di_zoi_lvn_jen_l?g"
print(s[::2]) #从开始到结尾,步长为2
运行结果:
d_o_v_e_?
转义字符
\ 转义
\n 换行
\t 制表符
print("淘气包\n马\t小跳")
运行结果:
淘气包
马 小跳
按照原始字符串进行输出
R
r
示例:
print(r"C:\Users\acer\Desktop\文本文档")
print(R"C:\Users\acer\Desktop\文本文档")
运行结果:
C:\Users\acer\Desktop\文本文档
C:\Users\acer\Desktop\文本文档
编码和解码
编码: encode()
解码: decode()
baidu = "我是百度"
print(baidu.encode())
new = baidu.encode()
print(new.decode())
运行结果:
b'\xe6\x88\x91\xe6\x98\xaf\xe7\x99\xbe\xe5\xba\xa6'
我是百度
字符串的拼接
示例:
a = "蟒蛇是谁?"
b = "Python"
print(a+b)
运行结果:
蟒蛇是谁?Python
判断字符是否包含给定字符
如果包含返回True,不包含返回False
示例:
a = "Python"
print("P" in a)
运行结果:
True
重复输出字符串
示例:
print("a"*10)
运行结果:
aaaaaaaaaa
字符串的替换
用法:
变量.replace(“被替换的字符”,’替换字符’)
示例:
s1 = "python"
s2 = s1.replace("py","p")
print(s1)
print(s2)
运行结果:
python
pthon
注意:字符串本身不会改变,会返回一个新的字符串(结果)
字符串的查找
变量.index(“需要查找的字符”)
变量.find(“需要查找的字符”)
区别:
index查找失败会报错并终止程序
find 查找失败会返回-1,不会影响程序的运行
示例1: index 查找成功 和find 查找失败
print("dfafdfsf".index("f"))
print("dfafdfsf".find("z"))
运行结果:
1
-1
示例2: index 查找失败
print("dfafdfsf".index("z"))
运行结果:
Traceback (most recent call last):
File "G:/PyCharm_/python_basic/day01/first.py", line 1, in <module>
print("dfafdfsf".index("z"))
ValueError: substring not found
去除字符串两边指定的字符
注意:默认去除两边空格,是两边的,不是中间
示例:
print(" py thon ".strip()) #默认去除两边空格
print("aaa pytho aa na a".strip("a")) #去除两边指定的字符
运行结果:
py thon
pytho aa na
去除左边指定的字符,默认去除空格
示例:
print("aa python ".lstrip("a"))
运行结果:
python
去除右边指定的字符,默认去除空格
示例:
print("aaa pythonaaaa".rstrip("a"))
运行结果:
aaa python
开头首字母大写
示例:
s = "pyThon"
print(s.capitalize()) #开头首字母大写
print(s.upper()) #全部转换大写
print(s.lower()) #全部转换小写
print(s.title()) #无论是否大小写,只会让首字符大写
运行结果:
Python
PYTHON
python
Python
判断是否全部大写,小写,首字母大写
示例:
s1 = "PYTHON"
s2 = "python"
s3 = "Python"
print(s1.isupper()) #是大写返回True 不是返回 False
print(s2.islower()) #是小写返回True 不是返回 False
print(s3.istitle()) #开头是大写返回True 不是返回 False
运行结果:
True
True
True
判断是否以某个字符开头或结尾(区分大小写)
如果是返回True,不是返回False
示例:
s = "Python"
print(s.startswith("p"))
print(s.endswith("n"))
运行结果:
False
True
判断当前字符串是否全部是字母和数字
如果是返回True,不是返回False
示例:
print("111aaaa#%$".isalnum())
print("111aaaa".isalnum())
运行结果:
False
True
判断当前字符串是否全部是字母
如果是返回True,不是返回False
示例:
print("aadfaf".isalpha())
print("aadfaf12".isalpha())
运行结果:
True
False
判断当前字符串是否全部是数字
如果是返回True,不是返回False
示例:
print("123123".isdigit())
print("123123aa".isdigit())
运行结果:
True
False
字符串拆分成列表
示例: 以” . ” 来拆分字符串
print("www.baidu.com".split("."))
运行结果:
['www', 'baidu', 'com']
将序列中的元素以指定字符连接成一个新的字符串
示例:
a =['www', 'baidu', 'com']
print("!".join(a)) #以“!”来连接
print("".join(a)) #直接连接
运行结果:
www!baidu!com
wwwbaiducom