python 字符串(二)

python 字符串(二)

目录标题

    • 1.字符串的索引
    • 2. 字符串切片
    • 3. 跳跃取值-->每隔几个元素取一个值
    • 4. 字符串查找
    • 5. 统计字符串中某个字符/字符串的个数
    • 6. 字符串的分割
    • 7. string 格式化输出
    • 8. 字符串的替换
    • 9. string.is() 判断
    • 10. 字符串中for 和while循环的使用
    • 11. 判断某个元素是否是否在字符串中

1.字符串的索引

​ 可以通过索引查找元素

​ 注意:字符串索引正向是从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

2. 字符串切片

注意:切片原则,左闭右开[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

3. 跳跃取值–>每隔几个元素取一个值

语法: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

4. 字符串查找

  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

5. 统计字符串中某个字符/字符串的个数

  string.count()
string = "0123456789000"

string_count = string.count("0")
print(string_count) # 4

6. 字符串的分割

  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)

7. string 格式化输出

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

8. 字符串的替换

string.split(替换前的值,替换后的值)
string = "小老鼠 我喜欢你"
print(string)

string_1 = string.replace("小老鼠","小狮子")
print(string_1)

输出:
小老鼠 我喜欢你
小狮子 我喜欢你

9. string.is() 判断

  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

10. 字符串中for 和while循环的使用

   strings = "0123456789"
   
   for string in strings:
       print(string)
       
   输出:
   0
   1
   2
   3
   4
   5
   6
   7
   8
   9

11. 判断某个元素是否是否在字符串中

   1. in  :判断某个元素是否在字符串中
   2. not in : 判断某个元素是否不在字符串中
 if "01" in strings:
     print("01在strings中")
 
 if "10" not in strings:
     print("10不在strings中")
     
 输出:
 01在strings中
 10不在strings中

你可能感兴趣的:(python基础,python)