python 字符串(二)
可以通过索引查找元素
注意:字符串索引正向是从0开始 逆向 从-1 开始
# 索引 从0开始 0 1 2 3 4 5 6...
string = "0123456789"
string_1 = string[0]
print(string_1)
string_2 = string[1]
print(string_2)
string_3 = string[2]
print(string_3)
string_4 = string[3]
print(string_4)
# 还可以倒着进行取值
string_end_1 = string[-1]
print(string_end_1)
输出:
0
1
2
3
9
注意:切片原则,左闭右开[0,5)—> 0,1,2,3,4
string = "0123456789"
# 读取前两个元素
string_1 = string[0:2]
print(string_1)
# 读取全部元素
# 方法1:
string_2 = string[:]
print(string_2)
# 方法2:
string_3 = string[0:]
print(string_3)
输出:
01
0123456789
0123456789
语法:string[起始值:结束值:步长]
string = "0123456789"
# 每隔两个元素取一个值 方法1:
string_1 = string[0:9:2]
print(string_1) # 02468
# 方法2: 如果说需要在全部元素中取值,则
string_2 = string[::2]
print(string_2) # 02468
# 逆向取值,每隔两个元素取一个值
# 方法1:
string_3 = string[-1:-11:-1]
print(string_3)# 9876543210
# 方法2:
string_4 = string[::-1]
print(string_4) # 9876543210
输出:
02468
02468
9876543210
1. s.find() : 通过元素查找索引,找到返回索引,找不到返回-1 2. s.index(): 通过元素查找索引,找到返回索引,找不到返回error
```python
string = "0123456789"
# string.find()
index_1 = string.find("0")
print(index_1)
index_2 = string.find("1")
print(index_2)
输出:
0
1
string = "0123456789"
index_3 = string.index("2")
print(index_3) # 2
# 测试不存在的元素
index_10 = string.index("10")
print(index_10)
Traceback (most recent call last):
File "F:/2023/python/Basic/变量和数据类型/4. 字符串高级.py", line 63, in <module>
index_10 = string.index("10")
ValueError: substring not found
string.count()
string = "0123456789000"
string_count = string.count("0")
print(string_count) # 4
string.split() 分割之后用list来存储
string = "0 1 2 3 4 5 6 7 8 9"
string_split = string.split()
# ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
print(string_split)
string_1 = "我是第一个数字{},我的中文名字叫{},我的英文名字叫{}".format("0", "零", "zero")
print(string_1)
string_2 = "我是第一个数字{0},我的中文名字叫{1},我的英文名字叫{2}".format("0", "零", "zero")
print(string_2)
string_3 = "我是第一个数字{number},我的中文名字叫{Chinese_name},我的英文名字叫{English_name}".format(number = "0", Chinese_name = "零", English_name = "zero")
print(string_3)
输出:
我是第一个数字0,我的中文名字叫零,我的英文名字叫zero
我是第一个数字0,我的中文名字叫零,我的英文名字叫zero
我是第一个数字0,我的中文名字叫零,我的英文名字叫zero
string.split(替换前的值,替换后的值)
string = "小老鼠 我喜欢你"
print(string)
string_1 = string.replace("小老鼠","小狮子")
print(string_1)
输出:
小老鼠 我喜欢你
小狮子 我喜欢你
1. string.isdigit(): 判断是否由数字组成 2. string.isalpha(): 判断是否由数字组成 3. string.isalnum(): 判断是否由字母或者数字组成 4. string.isspace(): 判断是否都是空格
string_num_bool_1 = string_num.isalnum()
print(string_num_bool_1)
string_num_bool_2 = string_num.isalpha()
print(string_num_bool_2)
string_num_bool_3 = string_num.isalnum()
print(string_num_bool_3)
输出:
True
False
True
string_1 = ""
string_1_isspace = string_1.isspace()
print(string_1_isspace)
string_2 = " "
string_2_isspace = string_2.isspace()
print(string_2_isspace)
输出:
False
True
strings = "0123456789"
for string in strings:
print(string)
输出:
0
1
2
3
4
5
6
7
8
9
1. in :判断某个元素是否在字符串中 2. not in : 判断某个元素是否不在字符串中
if "01" in strings:
print("01在strings中")
if "10" not in strings:
print("10不在strings中")
输出:
01在strings中
10不在strings中