Python学习——字符串的操作

字符串

1. 字符串的创建

#type() 函数 查看对象的类型
在这里插入图片描述
在这里插入图片描述
即为字符串类型(class表示‘类别’)
#常用类型 str int float bool
#布尔类型(bool)只包含两个整数,分别是1和0 (1代表TRUE,0代表FALSE)
在这里插入图片描述
1

2. 字符串转义符

转义字符描述
\ (在行尾时)续航符
\ \反斜杠符号
\ "双引号
\ ’单引号
\n回车符,将光标移到下一行开头
\r回车符,将本行数据清除,将光标移到本行开头
\t水平制表符,也即Tab键,一般相当于四个空格
\b退格(Backspace),将光标位置移到前一列

#续航符把多行数据变成一行
在这里插入图片描述
在这里插入图片描述
#\n 把一行数据变成多行
在这里插入图片描述
在这里插入图片描述

3. 字符串格式化

原本:
在这里插入图片描述
在这里插入图片描述
输出中冒号与数字之间还是有间隙,而且输出代码比较麻烦。

#如何把数字嵌入到字符串里面去?----字符串格式化解决
字符串格式化有三种: format , % , f‘ ’(3.7以上的版本,就是format的简写)
1.format
字符串format()格式化数据:
在这里插入图片描述
使用方法:

value=100#将value放置在大括号的位置
data='我有{}元'.format(value)
print(data)

运行结果:

我有100

若要写如多个,比如:

age=18
value=100
data='我{1}岁,我有{0}元'.format(value,age)
#format中两者顺序不重要,想要顺序,{0}表示format第一个,{1}表示format第二个,以此类推
#若{}中的顺序与format中的顺序一致,则可以不用添加0,1等
print(data)

输出结果为:

18岁,我有100

在Python中,{:.2f}中的:表示分割点,如{:}就是无分隔,数字正常输出,如{:.2f}表示在小数点后两位断,即只取小数点后两位。
例如:

value=100.12345
print('我有{:.2f}元'.format(value))

输出结果为:

我有100.12

若输入为:

value=100.12345
print('我有{:}元'.format(value))

输出则为:

我有100.12345

2.%
字符串%传统格式化符号(最前面三个需背下来,后面需了解)

符号描述
%s格式化字符串
%f格式化浮点数字,可指定小数点后的精度
%d格式化整数
%c格式化字符及ASCII码
%u格式化无符号整型
%o格式化无符号八进制数
%x(%X)格式化无符号十六进制数
%e(%E)用科学计数法格式化浮点数
%g%f和%e的简写
%G%f和%E的简写
%p用十六进制数格式化变量的地址

%的使用:

value=100
age=18
data='我%s岁,我有%s元' % (age,value)
print(data)

输出为:

18岁,我有100

同理,当我们需要的数字是小数点(即浮点型),输入为:

value=100.12345
age=18
data='我%s岁,我有%.2f元' %(age,value)
print(data)

输出为:

18岁,我有100.12

浮点型是专门为了保留特定的小数位数需要的

3.f’ ’
使用方法相对format简单一些,直接一些,但是有版本要求(版本要求在3.7以上)
如:

value=100
age=18
data=f'我{age}岁,我有{value}元'
print(data)

输出为:

18岁,我有100

#一般这种方法不用浮点型,若用浮点型一般直接使用第二种方法

4. 字符操作符

1." + " , 多个字符串的拼接

data1='a'
data2='b'
print(data1+data2)

输出为:

ab

注:字符串是不能和整数进行拼接运算的,(str不能和int拼接),如:
*规定age=20,不能改为age='20'*

age=20
data='我'+age+'岁'
print(data)

输出结果是会报错的
若改为:

age=20
data='我'+'age'+'岁'
print(data)

输出则变成:

我age岁 

若想正常输出完整句子,需要数据类型强转
2.数据类型强转

int()  #转换成int类型
str()  #转换成str类型
bool() #转换成bool类型
float()#转换成float类型

几乎Python中所有类型都是可以完成数据类型强转的
我们只需要将上述题目中
data=‘我’+age+'岁’转换成data=‘我’+str(age)+'岁’即可

操作符描述
+字符串连接
*重复输出字符串
[ ]通过索引获取字符串中字符
[ : ]截取字符串中的一部分
in成员运算符-如果字符串中包含给定的字符返回True
not in成员运算符-如果字符串中不包含给定的字符返回True
r/R原始字符串-原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符
print(‘abc’*100)——abc重复一百次
r\R的作用:使用后所有的特殊符号全都无效
data=C:\Users\14317\Desktop\ppt

如果不想一个个按,使每个’‘变成’\',从而使转义符失效,可以写成:

data=r'C:\Users\14317\Desktop\ppt'

可以达到同样效果

#[ ] 通过索引获取字符串中字符
索引分为两种,正索引和负索引,
以字符串abcd为例,
正索引即从左向右从0开始数,即abcd(0 1 2 3);
负索引即从右向左从-1开始数,即abcd(-4 -3 -2 -1)

data='abcd'
print(data[1])

输出为

b

若想要取多个,则需要用到“[ : ]”符号(切片–从一个索引切到另一个索引)
print(data[ : ])----从头切到尾,获取全部数据,就相当于没有切
切分点如下(还是以abcd为例):

正索引                     负索引
 | a | b | c | d |        | a | b | c | d |
 0   1   2   3   4       -4  -3  -2  -1   0(此0实际上不可以写在代码中,因为它实际上不存在)
 #正索引和负索引中都有0,但是只认正索引的0,负索引的0只是为了方便理解
data='abcd'
#正索引               #负索引
print(data[0:2])      print(data[-1:])

输出结果:

#正索引               #负索引
ab                    d
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值