day6-字符串

一、认识字符串

1.什么是字符串(str)

字符串属于容器型数据类型,又叫序列。将引号(可以是单引号也可以是双引号)作为容器,字符是元素,不可变(字符个数、字符值和顺序不可变),但是有序(字符的顺序不同、字符串的值就不一样)


2.字符串中的内容

字符串中的每个基本单元就是字符:python中有字符的概念,但是没有字符对应的数据类型

  • 1)普通字符:例如:字母,数字,文字,符号
  • 2)转义字符:在指定的符号前加\来表示一些具有特殊功能或者特殊意义的符号
    • \n — 换行
    • \t — 制表符
    • \' — 一个单引号
    • \" — 一个双引号
    • \\ — 反斜杠
  • 3)编码字符串:用\u四位十六进制编码值,表示一个编码值对应的字符
  • 4)编码:计算机存储字符的时候实质存的是字符对应的编码值,每个字符的编码值是固定的
    • 计算机本身只有存储数字的能力,而且存的是数字的补码(二进制)
    • 字符和字符的编码的一一对应关系叫编码表,常见的编码表有:ASCII表和Unicode表,python的字符采用的是Unicode编码(Unicode表是对ASCII表的扩充,包含了世界上所有的语言符号)
    • 中文编码范围:\u4e00—\u9fa5
    • chr(编码值) — 获取编码值对应的字符
    • ord(字符) — 获取字符的编码值
  • 5)阻止转义:在字符串的最前面加r/R 可以阻止当前字符串中的所有转义字符转义
  • 注意:一个转义字符和一个编码字符的长度都是1

二、字符串操作

1.获取字符串

1.1 获取单个字符

1)语法

字符串[下标] — 获取指定下标对应的字符

2)说明

字符串 — 可以是字符串值、字符串变量或者是结果是字符串的表达式

[] — 固定写法

下标 — 下标索引;字符串一旦确定,那么字符串中的每个字符的为止就确定了,

​ 每个字符都会对应固定的下标来表示字符在在字符串中的位置。

​ 下标的值有两种:0 ~ 字符串长度-1;-1~ -字符串长度。

​ 下标0对应的是第一个字符,下标-1对应的是最后一个字符。

3)注意

下标不能越界

1.2 获取部分字符(字符串切片)

1)语法

字符串[开始下标:结束下标:步长] — 从开始下标开始获取,每次增加步长去取下一个字符,直到获取到结束下标为止。

2)说明

字符串 — 字符串值或者字符串变量

[] — 固定写法

开始下标,结束下标 — 下标值

步长 — 整数

3)注意
  • 结束下标对应的字符永远取不到;
  • 当步长为正,开始下标到结束下标从前往后取,这个时候开始下标对应的字符必须在结束下标的前面,否则取到的是空串;
  • 当步长为负,开始下标到结束下标从后往前取,这个时候开始下标对应的字符必须在结束下标的后面,否则取到的是空串; '' — 空串
  • 下标可以越界。

1.3 获取部分字符2

  • 省略步长:步长为1
    • 字符串[开始下标:结束下标]
  • 省略开始下标
    • 字符串[:结束下标:步长]字符串[:结束下标]
    • 步长为正:从第一个字符开始往后取; 步长为负:从最后一个字符往前取
  • 省略下标
    • 字符串[::步长]字符串[:]

2.遍历字符串

2.1直接遍历拿到每个字符

for 变量 in 字符串:
    循环体

2.2通过遍历下标遍历字符串

len(字符串) — 获取字符串长度(字符的个数)


三、字符串相关运算

1.数学运算:+,*

1)字符串1 + 字符串2 — 将两个字符串拼接在一起产生一个新的字符串

​ 注意:字符串只能和字符串相加

2)字符串*N — 字符串重复N次产生新的字符串

2.比较运算

1)比较相等:==!=

2)比较大小:> ,<,>=,<=

​ 字符串比较大小,比较多是字符串第一对不相等的字符串的编码值的大小

判断一个字符是否是小写字母: 'a'<=字符<='z'

判断一个字符是否是大写字母:'A'<=字符<='Z'

判断一个字符是否是字母: 'a'<=字符<='z' or 'A'<=字符<='Z'

判断一个字符是否是数字字符: '0'<=字符<='9'

判断一个字符是否是中文(4e00-9fa5):'\u4e00'<=字符<='\u9fa5'

3.in / not in

字符串1 in 字符串2 — 判断字符串2在、是否包含字符串1

字符串1 not in 字符串2 — 判断字符串2在、是否不包含字符串1

4.str(数据) — 将指定数据转换成字符串

所有的数据都可以转换成字符串; 直接在数据的外面加引号

5.格式化字符串

在字符串中用格式占位符来表示字符串中变化的部分

1)语法

包含格式占位符的字符串 % (格式占位符对应的多个数据)

  • %s — 字符串
  • %d — 整数
  • %Nf — 小数,N用来约束小数的位数
  • %c — 字符(可以将数字转换成字符)

6.字符串相关的方法

字符串.函数名()

1)对齐方式
  • 字符串.center(宽度,填充字符)
  • 字符串.ljust(宽度,填充字符)
  • 字符串.rjust(宽度,填充字符)
  • 字符串.zfill(宽度) == rjust(宽度,'0')
2)统计个数

字符串1.count(字符串2) — 统计字符串1中字符串2出现的个数

3)join函数

字符串.jion(序列) — 将序列中的元素用指定的字符串连接在一起产生一个新的字符串

注意:序列的元素必须是字符串

4)去掉空白

字符串.lstrip() — 去掉字符串左边的空白

字符串.rstrip() — 去掉字符串右边的空白

字符串.strip() — 去掉字符串两边的空白

5)字符串替换

字符串.replace(字符串1,字符串2) — 将字符串中的字符串1替换成字符串2

6)字符串切割

字符串.split(字符串1) — 字符串按照字符串1进行切割,结果是包含多个字符串的列表

你可能感兴趣的:(day6-字符串)