python基础之字符串(string类型)

一、定义字符串

字符串就是一系列字符,在Pytho中的字符串用英文的单引号'或双引号“或者三个单引号'''括起来

如下所示:

'This is string'
"This is string"
'''This is string'''

二、字符串切片

变量规则:含头不含尾,左闭右开

索引值从左到右,第一个元素的索引为0,最后一个元素索引为-1

步长默认值为1

str_num = "123456789"
# 取单字符 字符串中第二个字符
print(str_num[1])
# 取单字符 字符串中倒数第二个字符,结果为8
print("字符串中倒数第二个字符:", str_num[-2])
# 取多个字符 从开始位置截图长度为3对应的字符串 0:3,结果为123
print("从开始位置裁图长度为3对应的字符串:", str_num[0:3])
# 取从第三个字符后面所有字符,结果为3456789
print("取从第三个字符开始,截取后面所有字符:", str_num[2:])
# 取前六个字符,结果为123456
print("取前六个字符:", str_num[:6])
print("取前六个字符:", str_num[0:6])
# 步长为2,截取从第一个字符开始,隔2个字符再取下一个字符,结果为147
print(str_num[::3])
# 字符串反转 从右到左,结果为987654321
print("字符串反转:", str_num[::-1])

 三、特殊符号处理,字符串添加空白

1、在字符串中添加制表符\n,相当于tab键的效果

>>> print("python")
python
>>> print("\tpython")
    python

2、在字符串中添加换行符\n

>>> print("language:\npython\nC\njava")
language:
python
C
java

 3、在同一个字符中包含制表符和换行符,\n\t ,可以换到下一行并在下一行的开头添加一个制表符

>>> print("language:\n\tpython\n\tC\n\tjava")
language:
    python
    C
    java

4、字符串格式

# 字符串格式表示方式一
>>> print("%s,年龄:%s岁,工作年限:%d,公司招测试请联系我" % ("小骄傲", "28", 6))
小骄傲,年龄:28岁,工作年限:6,公司招测试请联系我

# 字符串格式表示方式二
>>> print("{1},年龄:{0}岁,工作年限:{2},公司招测试请联系我".format("28", "小骄傲", 6))
小骄傲,年龄:28岁,工作年限:6,公司招测试请联系我

# 字符串格式表示方式三
>>> name = "小骄傲"
>>> age = "28"
>>> wyrs = "6"
>>> print(f"{name},年龄:{age}岁,工作年限:{wyrs},公司招测试请联系我")
小骄傲,年龄:28岁,工作年限:6,公司招测试请联系我

四、字符串拼接

字符串是不可变数据类型,字符串更新,不能对某个字符更新, 只能通过拼接更新

>>> name = '小骄傲'
>>> loi = 'my name is '
>>> loiname = loi + name
>>> print(loiname)
my name is 小骄傲

五、字符串常见函数

join:通过分隔符-合并一个新的字符;join(seq)以指定的分隔符把seq中的元素合并成一个新字符串 join 加入‐‐‐某个规则符号,实例如下:

>>> join_str = "helloworld"
>>> new_str = "‐".join(join_str)
>>> print(new_str)
h‐e‐l‐l‐o‐w‐o‐r‐l‐d

split:split()通过分隔符截图多个字符,返回列表数据

>>> path = "1448555;1571255;565625489;211548585;5868784"
>>> for item in path.split(";"):
>>>     print(item)
1448555
1571255
565625489
211548585
5868784

replace(原字符, 新字符) ,替换字符串

>>> love = "i love java"
>>> print(love.replace("java", "python"))
i love python

find(查找字符, 开始索引到结束索引值)查找字符串,找到返回开始索引值,没有找到返回‐1

>>> ss_str = "1234567843432"
>>> print(ss_str.find("8"))
>>> print(ss_str.find("a"))
7
-1

index‐‐>find区别在于,index如果没有找到则报错

>>> ss_str = "1234567843432"
>>> print(ss_str.index("8"))
>>> print(ss_str.index("a"))
7
ValueError: substring not found

count(查询字符, 开始索引,结束索引值) 返回某个字符在指定范围出现次数

>>> ss_str = "1234567843432"
>>> print(ss_str.count("2"))
2

startswith (匹配字符, 开始索引到结束索引值) 判断是否以某个字符开头,常用于逻辑判断,返回True,False

>>> ss_str = "1234567843432"
>>> print(ss_str.startswith("123"))
True

endswith判断是否以某个字符结尾,如上startswith

>>> ss_str = "1234567843432"
>>> print(ss_str.endswith("123"))
False

字符串之间大小写转换:lower() 小写;upper() 大写;apitalize() 首字母大写

>>> love = "i love java"
>>> print(love.lower())  # 小写
>>> print(love.upper())  # 大写
>>> print(love.capitalize())  # 首字母大写
i love java
I LOVE JAVA
I love java

len长度;

>>> ss_str = "1234567843432"
>>> print(len(ss_str))
13

encode和decode分别指编码和解码

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