一、字符串基本使用
1. 字符串截取
根据索引获取字符串的内容,下标从0开始,-1从后往前str[start:stop]
str = "hellochen"
print(str[1:2])
print(str[1:])
print(str[:2])
2. 字符串运算
- 字符串的加法=字符串拼接 ```python str1 = “hello” str2 = “chen”
print(str1+str2)
hellochen
- 字符串的乘法=字符串重复
```python
str = "hellochen"
print(str*3)
----------------
hellochenhellochenhellochen
3. 字符串转义
\n | \t | \\ | \“ | \‘ |
---|---|---|---|---|
换行符 | 横向制表符 | 反斜杠 | 双引号 | 单引号 |
str = "h\\el\tlo \n ch\"e'n"
print(str)
# 如果字符串里有很多字符需要转义,就需要加入很多\,为了简化,python允许使用r""表示,""内部的字符串默认不转义
print("\\\t\\")
print("\\\\\\t\\\\")
print(r"\\\t\\")
4. 字符串成员判断
str1 = "hellochen"
str2 = "hello"
print(str1 in str2)
print(str2 in str1)
--------------------
False
True
二、字符串格式化
Pyhton中字符串格式化有多种,具体情况具体分析引用
- C风格格式化打印 | %s | %d | %f | | :—-: | :—-: | :—-: | | 格式化字符串 | 格式化整数 | 格式化浮点数字,可指定小数点后的精度 |
name = "hellochen"
age = 18
score = 99.999
print("我是%s,今年%d岁,成绩为%.2f分" %(name, age,score))
- format方法 ```python name = “hellochen” age = 18 score = 99.999
print(“我是{},今年{}岁,成绩为{}分”.format(name, age,score)) print(f”我是{name},今年{age}岁,成绩为{score}分”) #
<a name="NB7Gw"></a>
### 三、[字符串常用方法](https://docs.python.org/zh-cn/3/library/stdtypes.html#string-methods)
<a name="GyN4J"></a>
#### 1. len(str)
作用:计算字符串的长度(按字符个数计算)
```python
print(len("hellochen"))
----------------
9
2. 字母转换
- lower() 作用:将字符串中所有大写英文字母转为小写
- upper() 作用:将字符串中所有小写英文字母转为大写
- swapcase() 作用:将字符串中的大写英文字母转为小写,小写英文字母转为大写
- capitalize() 作用:将字符串中第一个字符转为大写,其余转为小写
- title() 作用:得到“标题化”的字符串,每个单词的首字符大写,其余小写 ```python name = “hello chen”
print(name.lower()) print(name.upper()) print(name.swapcase()) print(name.capitalize())
print(name.title())
hello chen HELLO CHEN HELLO CHEN Hello chen Hello Chen
<a name="sILqi"></a>
#### 3. 字符宽度
- **center(width[, fillchar])** 作用:返回一个指定width宽度的居中字符串,fillchar为填充字符串,默认为空格
- **ljust(width[, fillchar]) ** 作用:返回一个指定width宽度的左对齐字符串,fillchar为填充字符串,默认为空格
- **rjust(width,[, fillchar]) ** 作用:返回一个指定width宽度的右对齐字符串,fillchar为填充字符串,默认为空格
- **zfill (width) ** 作用:返回一个指定width宽度的右对齐字符串,默认填充0
```python
str = "hellochen"
print(str.center(15, "-"))
print(str.ljust(15, "-"))
print(str.rjust(15, "-"))
print(str.zfill(15))
---------------------------
---hellochen---
hellochen------
------hellochen
000000hellochen
4. 字符串截取
- lstrip([char]) 作用:截掉字符串左侧指定的字符,默认为空格
- rstrip([char]) 作用:截掉字符右侧指定的字符,默认为空格
- strip([char]) 作用:截掉字符左右两侧指定的字符,默认为空格
- split(str=” “[, num=string.count(str)]) 作用:按照str(默人空格)切割字符串,得到一个列表,列表是每个单词的集合
replace(old, new[, max]) 作用:将字符串中的old替换为new,如果没有指定max值,则全部替换,如果指定max值,则替换不超过max次
5. 字符串检测统计
count(str[, beg= 0[,end=len(string)]])
作用:返回str在string中出现的次数,如果beg或者end指定则返回指定范围内的出现次数
- find(str[, beg=0[, end=len(string)]])
作用:检测str是否包含在string中,默认从左到右查找,如果存在则返回第一次出现的下标,否则返回-1,如果beg或者end指定则在指定范围内检测
- index(str[, beg=0[, end=len(string)]])
作用:检测str是否包含在string中,默认从左到右查找,如果存在则返回第一次出现的下标,否则返回异常(报错),如果beg或者end指定则在指定范围内检测
- rfind(str[, beg=0[,end=len(string)]])
作用:检测str是否包含在string中,默认从右到左查找,如果存在则返回第一次出现的下标,否则返回-1,如果beg或者end指定则在指定范围内检测
- rindex(str[, beg=0[, end=len(string)]])
作用:检测str是否包含在string中,默认从右到左查找,如果存在则返回第一次出现的下标,否则返回异常(报错),如果beg或者end指定则在指定范围内检测