回忆上次内容
- 上次 了解 的是
- 整型变量
- integer
- 本质上是 二进制形式 直接存储的 数字
- 两个不同类型的变量
- i_age
整型的 年龄变量- 其中i 代表 int 整数
- s_age
- 字符串型的 年龄变量
- 其中s 代表 string 字符串
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python](https://s2.51cto.com/images/blog/202503/25090724_67e201cc3109856118.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 整型 和 字符串
- 输出 到屏幕上区别
- 这两个类型 区别在
哪呢??🤔
运算逻辑
- 最大的不同就是
- 运算的逻辑
- 比如加法
类型 | 逻辑 | 英文 |
整数加 | 数值 相加 | add |
字符串加 | 拼接 | cancatenate |
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_02](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1a22518142.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 整型数字
- 类型 诞生的目的
- 就是 进行 运算、比较
- 字符串变量
- 诞生的目的 就是
- 为了
字符串查找、匹配、显示之类的目的
- 可以用字符串给变量赋值吗?
用变量赋值
- 还是这个网站可以看变量
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_03](https://s2.51cto.com/images/blog/202503/25090724_67e201cc2b61641401.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 还是选择
- 渲染 堆上的 所有变量
- render all objects on the heap
s1 = "oeasy"
s2 = "o2z"
print(id(s1), id(s2))
s2 = s1
print(id(s1), id(s2))![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_04](https://s2.51cto.com/images/blog/202503/25090724_67e201cc12dc357550.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字符串英文怎么说来着?
字符串
- s 的类型 是
str
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_05](https://s2.51cto.com/images/blog/202503/25090723_67e201cbecc8823149.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- str 是 string 的缩写
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_06](https://s2.51cto.com/images/blog/202503/25090724_67e201cc2a07d21394.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
string
- string 意思是
- 绳子
- 或者琴弦
- 后来也指
- 用绳子把东西串起来
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_07](https://s2.51cto.com/images/blog/202503/25090724_67e201cc3310768205.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 比如把
什么东西 串起来 呢?
糖葫芦串
- 山楂 串起来 形成的
- 就是糖葫芦串
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_08](https://s2.51cto.com/images/blog/202503/25090724_67e201ccc06a332463.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 类似的还有
- 羊肉串
- 土豆串
- 鱼豆腐串
- 字符串
字符串
- 把一个个字符串起来
- 就是 字符的串
- 字符串
- str
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_09](https://s2.51cto.com/images/blog/202503/25090724_67e201cc4c17943941.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字符是
怎么
- 存进计算机的 呢?
回忆
- 字符是 将序号
- 保存为二进制形式
- 存在 计算机中的
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_10](https://s2.51cto.com/images/blog/202503/25090724_67e201cc0360098725.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字符 存在 字节里
- 又是 怎么穿成串的呢?
字符串
- 字符串
- 里面 各个山楂 挨着
- 一个山楂 就是 一个
字符
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_11](https://s2.51cto.com/images/blog/202503/25090724_67e201cc69ad524011.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字符串长度怎么算??🤔
问ai
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_12](https://s2.51cto.com/images/blog/202503/25090724_67e201cc4e0a741266.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
长度
- 可以使用函数len
len("oeasy")- 字符串有
几个字符
- 字符串就有
多长
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_13](https://s2.51cto.com/images/blog/202503/25090724_67e201cc0aa1c32577.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 帮助怎么说呢?
求助帮助
- 查查这个len的帮助
help(len)- len
- length
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_14](https://s2.51cto.com/images/blog/202503/25090724_67e201cc0dcaf84509.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 返回容器中物品的个数
手串长度
- 这就是
- 一串金刚菩提
- 代表断除一百零八种烦恼
- 长度就是108
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_15](https://s2.51cto.com/images/blog/202503/25090725_67e201cd1a13643412.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 最终
- 证得一百零八种无量三昧
- 三摩地(Samādhi)
- "oeasy"
- 总共 5 个字符
- 可以逐一访问吗?🤔
下标
- 字符可以用 下标运算符
[]进行访问
- 将 序号n 放入中括号里
- 就得到第n个字符
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_16](https://s2.51cto.com/images/blog/202503/25090724_67e201cc6bfec60533.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 特别注意❗❗❗
- 下标不是从
1开始的 - 而是从
0开始的
从零开始
- 这样就可以用序号
- 访问到字符串中的每个字符
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_17](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1b59f64963.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 可以把这个对应关系写清楚吗?
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_18](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1381084458.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
写清楚
- 每行分成3部分
- 固定结构
- 有三块 均为 蓝色
- 变化部分有两块
- 红色 自增的数值 从0到4
- 绿色 通过数值 索引得到的 字符
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_19](https://s2.51cto.com/images/blog/202503/25090724_67e201cc3a89544843.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- <span style="color:blue;">s[</span><span style="color:red;">num</span><span style="color:blue;">] = '</span><span style="color:green;">s[num]</span><span style="color:blue;">'</span>
- 尝试自己拼合一下
结果
for num in range(len(s)):
print("s[", num, "] = '", s[num],"'",sep="")- 运行效果
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_20](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1825f15048.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 如果交给ai怎么做?
- 不要翻页
- 自己试试
ai
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_21](https://s2.51cto.com/images/blog/202503/25090724_67e201cc55b0a95176.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 目标格式不符合要求
主动要求格式
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_22](https://s2.51cto.com/images/blog/202503/25090724_67e201cc26e2482146.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 通过fstring
- 效果达成
下标范围
- 下标从 0 开始
- 最后一位是 len(o)-1
- 也就是 5-1 = 4
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_23](https://s2.51cto.com/images/blog/202503/25090724_67e201cc4e8ac7959.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 如果我
就想
- 访问 o[5] 呢
下标越界
- 访问 o[5] 报错
- IndexError
- string index out of range
- 中括号中 数字被叫做
索引- index
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_24](https://s2.51cto.com/images/blog/202503/25090724_67e201cc19b6d8719.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 如果索引数字 超过了字符串长度
- 就会发生
- 索引错误
- IndexError
- 字符串索引 超出范围
- 字符串索引 下标越界
- 访问了 一个不存在的下标值
- IndexError中的index是什么意思?
index
- index 最开始的意思是食指
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_25](https://s2.51cto.com/images/blog/202503/25090724_67e201cc6d4be91280.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 这和下标有什么关系呢?
索引
- 后来 在翻书的时候
- 用食指 找到 目录中 具体页数
索引到该页码
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_26](https://s2.51cto.com/images/blog/202503/25090725_67e201cd1963934188.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 所以index
- 也有
索引的含义
指数
- 关键词的热度指标、指数
- 用的也是这个index
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_27](https://s2.51cto.com/images/blog/202503/25090724_67e201cc2c4a468097.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 索引下标可以是负的吗?
负数下标
- 最后一个字符
- 序号也可以 写成-1
- 从0号元素 反方向旋转一格
- 意思是 倒数第一个字符
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_28](https://s2.51cto.com/images/blog/202503/25090724_67e201cc564b434144.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 具体情况
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_整型_29](https://s2.51cto.com/images/blog/202503/25090724_67e201cc214f733200.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
再问ai清楚
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_30](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1eb7469298.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
s = "oeasy"
length = len(s)
for i in range(-1, -length - 1, -1):
print(f"s[{i}] = '{s[i]}'")- 运行效果
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_31](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1718c18972.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 要求从o到y
再提要求
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_32](https://s2.51cto.com/images/blog/202503/25090724_67e201cc1835e58551.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
s = "oeasy"
for i in range(-5, -1):
print(f"s[{i}] = '{s[i]}'")- 一点小瑕疵
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_python_33](https://s2.51cto.com/images/blog/202503/25090724_67e201cc23fb841490.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 试试手动修改
总结
- 这次了解的是
字符串
![图片描述 [oeasy]python078_字符串类型怎么用_str_string_下标运算符_中括号_字符串_34](https://s2.51cto.com/images/blog/202503/25090724_67e201cc88b0737269.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=,x-oss-process=image/resize,m_fixed,w_1184)
- 字符串 就是
字符的串
- 字符串长度 可以用
len函数 - 字符可以用
下标索引 []
- 可以有正索引
- 也可以有负索引
- 可以有随机数字吗?🤔
- 怎么玩呢?🤔
















