上节课我们学习了数字,数字和我们学习的数学是紧密结合的。而这节课我们学习的字符则是和语文(或者英语)强烈关联着。
## 什么是字符串
我们平时用电脑、手机最经常做的操作是什么?对,就是打字了。这些打出的字就是字符串。**字符串是用来表示文本的,由一堆字符组成**,那什么是字符呢?**我们键盘里敲击的汉字、英文字母、标点符号都是字符**。
![](https://upload-images.jianshu.io/upload_images/145902-eeb3ae2512d3b239.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/700)
就像一句话有不同的含义,一个字符串也会有不同的含义。可以是一个**URL连接(网站地址)**、**一段文章**、**文件路径**等等。
## 对字符串能做哪些操作
在介绍我们对字符串能做哪些操作前,我们先会议一下。我们对一段话能做哪些操作:**改错字**、**数文字字数**、**找成语**、**摘抄名句**。
接下来我们就学习一下在python里怎么使用字符串,对字符串做我们列出的这些操作。
## python中怎么表达字符串
在python里,我们用英文的 ``' '``两个单引号或者 `` "" ""``两个双引号把字符包裹起来代表字符串。下面是一些例子:
```
# 定义字符串的几种方式
'hello world!'
'你好,世界'
"pyhon is beautiful language"
"python是美丽的语言"
'www.google.com'
# 赋值语句 定义变量a,它的值是 hello world
a = 'hello world'
# 赋值语句 把变量a的值改为 你好世界
a = "你好世界"
```
## python里的字符串操作
学习完怎么定义字符串,我们看看对字符串怎么做 *改错字*、*数文字字数*、*找成语*、*摘抄名句*。
* **取字符串长度-数文字字数**
```
a = 'i love python'
b = len(a)
print(b)
```
其中第二行 ``b = len(a)`` 中的 ``len(a)`` 就是取字符串a的长度。len是length的缩写,程序员是不是很爱偷懒,哈哈。 那整个第二行的意思就是:定义一个变量b,它的值是字符串a的长度。
* **取字符串里的子字符串-找成语**
```
a = '我们一定要好好学习,天天向上'
b = a[0]
c = a[2]
d = a[5 : 9]
print(b,c,d)
```
其中第二行 ``b = a[0]`` 中的 ``a[0]`` 就是取字符串第0个位置字符。等等,为什么是第0个位置,怎么数数的?是的,计算机这点特别矫情,数数是从0开始数的,这点和人类有很大的不同,一定要记住。**计算机是从0开始数数的**。
第四行的 ``d = a[5 : 9]`` 中的 ``a[5,9]`` 是取字符串的第6到底9的“好好学习”四个字符。这里要注意,因为计算机是从0开始数数的,所以“5”是取字符串的第六个字符;注意中间的英文“:”号。
* **字符串拼接-摘抄名句**
```
a = '我们一定要好好学习,天天向上'
b = ' 才有做到有一天金榜题名。'
c = a + b
print(c)
```
其中第三行 ``bc = a + b`` 的意思是 将字符串 a 和 b 拼接,拼接结果给到变量c
* **字符串替换-改错字**
```
a = '我们一定要好好学习,天天向尚'
b = a.replace('尚', '上')
print(a, b)
```
其中第二行 ``b = a.replace('尚', '上')`` 的``a.replace('尚', '上')``的意思是将字符串变量a里的“尚”替换成“上”;将替换结果给到变量b。
这里注意执行代码的结果,我们发现变量b为改变后的字符串,而变量a则还是原来的值,没有发生变化。
## 总结
这节课我们学习了什么是字符串,它是**用来表示文本的,和我们的语文对应**。我们对字符串可以做:**取长度**、**获取字符串里的子字符串**、**字符串拼接**、**字符串替换**四个主要的操作。
# 小灶时间
## 什么是布尔
生活中还有一种类型的数据。我们经常要回答**是或否**的问题,比如:太阳是不是东升西落、8是不是正数、鸡是不是飞行动物。这些问题,都只有 **是 或 否** 两种答案。
## python里的布尔
我们知道,是的英文是**True**, 否的英文是**False**。由 **True False** 俩数据组成的就是布尔,为啥只有两个还要定义一个新数据类型?因为这俩太特殊、太重要了。生活中那么多判断题,编程里更少不了。看代码:
~~~
a = True
b = False
~~~
是不是很简单。对,布尔就这些操作,简单而重要。
- 课程介绍
- 搭建环境
- 什么是计算机
- 程序是怎么运行的
- 安装python
- 项目实例-安装IDE
- 变量和简单数据类型
- 数据&变量
- 数字
- 字符串
- 布尔类型
- 项目实例
- 容器-列表
- 容器
- 列表
- 项目实例
- 容器-字典
- 定义字典
- 项目实例
- 数据类型总结
- 条件语句
- python条件语句
- 项目实例
- 循环语句
- for循环
- while循环
- 项目实例
- 函数
- 5.0函数定义
- 5.2函数实战
- 6.文件系统
- 6.1 文件系统介绍&python查找文件
- 6.2 用python读写文件
- 7. python操作时间
- 8.面向对象
- 8.1 类和对象
- 8.2 继承和重写
- 8.3 面向对象项目实战
- 9 GUI编程
- 9.1 GUI基础
- 9.2 备忘清单GUI版
- 10.网络
- 10.1 网络的发展
- 10.2 python http
- 11.web开发
- 11.1 web基础&HTML
- 11.2 CSS&JavaScript
- 11.3 网页计算器
- 11.3 网站开发实战-播客搭建
- 11.3 python-web
- 12. 项目实战-数据处理
- 13. 项目实战-AI入门
- 13.1 环境搭建
- 心得
- 13.2 Tensorflow的瓜怎么吃
- 14 pygame
- 14.1 pygame Helloworld
- 14.4 pygame 动画基础 Animation
- 从0开始学python第14.5节 pygame 加载图片和声音
- 从0开始学python第14.6节 pygame.sprite(上)
- 14.7 pygame.sprite模块(下)
- 14.8 pygame射击游戏(一)
- pygame射击游戏(二)
- 14.8 pygame射击游戏(三)
- 14.8 pygame射击游戏(四)
- 14.8 pygame射击游戏(五)