博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据类型(字符串)
阅读量:4983 次
发布时间:2019-06-12

本文共 1964 字,大约阅读时间需要 6 分钟。

一、字符串

1、字符串定义:由字符组成的序列,字符串中的每一个元素还是字符串

特性:字符串是不可变的序列类型

 

2、字符串的创建:单引号、双引号、三引号

单双引号用法几乎一致、除了两者交替使用可达到输出对方的效果(不建议使用此法,建议使用转义)

单双引号一般在一行中定义,想换行要用续航符(\),三引号自带换行(三引号不是注释)

 

创建空字符串,空字符串的长度为0,空字符串不是None,转换成bool类型输出Flase

str_null=""print(len(str_null))print(type(str_null))print(type(None))

 

 

输出的结果为:

0

<class 'str'>

<class 'NoneType'>

 

 

3、转义:

字符串的转义序列,将特殊字符转义

单、双引号的转义使用,\  放在需需转义的字符前,\  还能转义自己本身

s="i am \"ok\""

输出结果:i am "ok"

print("abcde\\fghik")

输出结果:

abcde\fghik

 

\n换行:代表换行,换到当前位置的下一行

\r:

在Windows,\r,要回到当前行的行首,不会换到下一行,如果直接输出,会将之前的内容覆盖住

注意:

前缀r:在字符串定义前加r,能够让字符串原样输出

                       

4、字符串的操作 运算符 索引 切片 注意:字符串的操作大部分都是新创建的字符串,除了整切片
1)
运算符:+、 * 、in 、not in、is、is not、==、<、<=、>、>= ①+合并,创建新字符串进行合并 ②*重复,返回的是新字符串 两者可以混合用 ③in、not in成员运算符 ④is、is not (字符串本身是有序的)

⑤==等 返回值为True、Flase

 

字符集: 比较的是ASCII码 逐个比较,若两边第一个字符已经比较出结果,则直接会出结果,True、Flase
当位数不同时,若前面无法比较出大小当位数不同时,位数少的补一个空位,继续比较

2)索引(索引不能越界,否则会报异常) 获取字符串中单个字符串,需要用到索引 格式:字符串名[index]:index可以为正数、负数、0 第一个元素:从0开始 正数:从左到右 负数:从右向左,最后一个元素为-1 范围:-len(s),len(s)-1 注意:字符串的元素不能修改,只能重新绑定
3)切片能够获取字符串的多个元素(包含start,不包含end)

格式:字符串名[start,end]:

包含start,不包含end,两者可以取正数、负数、0

start省略为0,end省略为len(s)

end-start=截取的长度

第一个元素:从0开始

正数:从左到右
负数:从右向左,最后一个元素为-1
范围:-len(s),len(s)-1
注意:切片是新创建的字符串(非整切片),字符串的元素不能修改,只能重新绑定

 

4)字符串的相关方法:

①center(str,start,end)统计

(可越界,不报错,和切片一样,当索引(下标)超过范围时,不会报错)

返回参数某字符串在原串中出现的次数

不写start、end,默认按原字符串统计

若只传递一个参数,认为是start,结果默认为len(st)

 

②index查找,若查找到则返回原中的位置,否则会报错

默认从左向右查找,查找子串中第一个字符出现的位置

 

③find查找,返回查找的内容在原中的位置,若找不到不会报错,会返回-1

默认从左向右查找,查找子串中第一个字符出现的位置

 

④join拼接字符串,把列表中各个元素按照字符串连接(通常用来拼接列表)

新创建的字符串

 

⑤replace替换,替换结果是replace

replace(old,new,count)

 

⑥strip剪切,去掉指定的符号,从两端去掉指定的字符串

参数不写,默认的空格

挨个字符找,去掉两端符合条件的字符串,一直去掉不符合条件的位置

# 从左边剪切

print(st.lstrip("af"))
# 从右侧剪切
print(st.rstrip("af"))

 

⑦split 切割:切割完的字符就没有了

按照切割的参数,一分为二

返回值是列表

 

⑧upper  lower

全部转成大写、小写

 

⑨isnumeric: 判断是不是数值类型

⑩isalpha: 判断是不是字符

(11)center(width,char)

如果width<len(s),不会对原串进行截取
width:占位
char: 填充的字符
s="hello world"
#当字符串长度是奇数,填充会从右侧开始
 当字符串长度是偶数,填充会从左侧开始

 

 

 

 

转载于:https://www.cnblogs.com/mengzhi7/p/9507807.html

你可能感兴趣的文章
SQL 生成公曆和農曆對照數據,公曆查找農曆和農曆查找公曆函數
查看>>
为何场效应管要用UGD与UGS(off)来比较判断夹断情况?
查看>>
.pem证书转xml格式字符串(.net)
查看>>
js构建ui的统一异常处理方案(二)
查看>>
三线程连续打印ABC
查看>>
ECharts
查看>>
初识网络爬虫
查看>>
git push 时不用每次都输入密码的方法
查看>>
54点提高PHP编程效率 引入缓存机制提升性能
查看>>
编解码-marshalling
查看>>
CDN原理
查看>>
java.lang.outofmemoryerror android
查看>>
coding
查看>>
省市联级(DataReader绑定)
查看>>
20165219 课上内容补做
查看>>
Tomcat7.0与Oracle10数据库连接池配置
查看>>
解决webpack和gulp打包js时ES6转译ES5时Object.assign()方法没转译成功的问题
查看>>
字节流与字符流的区别详解(转)
查看>>
类操作数据库
查看>>
找球号(一)
查看>>