python -- 字符串的常规操作

一 ,定义

字符串,是不可变数据类型,用一对单引号,或双引号定义一个字符串

注意事项: 如果字符串内部要使用双引号,则用单引号定义字符串,反之则反。

二,下标,索引取值和切片

通过索引获取指定位置的字符,索引都是从0开始算起

字符串的切片;

    1-- 格式, 字符串[起始索引,默认为0:结束索引:步长,默认为1]

    2-- 左闭右开,意思就是包含起始,不包含结束

    3-- 步长为正,表是正序切,步长为负,表示倒序切。

    4-- 字符串的反转, [::-1]

三,字符串的常用操作

a = "我是我是菜鸟,大神,Py大佬"

1-- find   检测指定的子字符串是否包含在字符串中,如果在,则返回该子字符串的开始的索引值,如果不存在则返回-1.常用于一些条件判断

还可以指定检查范围find("字符串",开始索引,结束索引)

 字符串.find("要查找的数据")    eg-- a.find("大神")

2-- count ,统计字符或子字符串在原字符串中出现的次数

a.count("我")

3-- len    获取字符串的长度

eg--  aa = len(a)

4-- upper  将字符串中的小写字母转换为大写字母。 如果要使用转换后的类型要重新定义一个变量接受新的字符串,因为字符串是不可变类型,不能再次修改。

b = a.upper()

5--  lower  将字符串中的大写字母转换为小写字母,

c = a.lower()

6--  format   格式化输出

动态的去改变字符串的值,占位符: {}, 有几个占位符,就有几个替换参数

age = 18
name = "哈哈"
score = 98.9999
f = 0.98

print("我的名字是: {},年龄是: {}".format(name, age))
print("我的名字是: {0},年龄是: {1}, 我明年年龄是: {1}".format(name, age))
print("我的名字是: {},年龄是: {}, 成绩为: {:.2f},百分比为: {:.2%}".format(name, age, score, f))

有一些数据需要重复使用是,可以在占位符里,加入替换参数的index

格式化输出数字,只保留两位小数的化,在占位符中写 :.2f  2改成3,就是保留三位小数

格式化输出百分比,在占位符中写 :.2% ,表示%号后保留两位小数

以上输出结果为:

7-- endswith   判断字符串以那个字符结束,常用于逻辑判断,如果是则返回True,不是返回False

a.endswith("我")

8-- startswith   判断字符串以那个字符开始,常用于逻辑判断,如果是则返回True,不是返回False

9-- split  字符串分割, 被选为切割符的字符,切割后是丢弃的

返回分割后的字符串列表。

分割的语法 --  str.split(str="", num=string.count(str)).  str就是原字符串中的子字符串,并把这个字符串作为分割符,num就是这个分割符在原字符串中的总次数,并作为分割的次数,默认有多少次切多少次,还可以指定分割次数
txt = "Google&Runoob&Taobao&Facebook"
x = txt.split("&", 1)  # & 这个符号作为分隔符,且在原字符串中出现了三次,但是我只指定分割一次

print(x)

输出结果为  ['Google', 'Runoob&Taobao&Facebook']

10-- 字符串的拼接

返回通过指定字符连接序列中元素后生成的新字符串。

语法: str.join(sequence)    str,为自己想要拿来拼接的字符串,seq是要拼接的列表,或元组

txt = "Google#Runoob#Taobao#Facebook"
x = txt.split("#")
分割后的结果:['Google', 'Runoob', 'Taobao', 'Facebook']
print(x)
c = "!".join(x)
print(c)

拼接后的结果:Google!Runoob!Taobao!Facebook

11-- 字符串的替换操作 replace   ,返会替换后的字符串

语法:

str.replace(old, new[, max])  old,要被替换的字符串,new新的字符串, max,原字符串中可能有多个old字符串,所以可指定一个替换的次数,替换不超过max
a = "this is string example....wow!!! this is really string"

print(a.replace("is", "was"))

print (a.replace("is", "was", 3))

以上输出结果为

 

后续有新踩的坑,在持续记录~

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值