📖第1节 基础语法
- ✅字面量
- ✅注释
- ✅变量
- ✅数据类型
- 🧊数据类型转换
- ✅标识符
- ✅运算符
- ✅字符串扩展
- 🧊字符串的三种定义方式
- 🧊字符串拼接
- 🧊字符串格式化
- 🧊格式化的精度控制
- 🧊字符串格式化方式2
- 🧊对表达式进行格式化
- ✅数据输入
✅字面量
字面量:在代码中,被写下来的固定的值,称之为字面量
Python中常用的有6种值(数据)的类型:
类型 | 描述 | 说明 |
---|---|---|
数字(Number) | 支持 •整数(int) •浮点数(float) •复数(complex) •布尔(bool) | 整数(int),如:10、-10 |
浮点数(float),如:13.14、-13.14 | ||
复数(complex),如:4+3j,以j结尾表示复数 | ||
布尔(bool)表达现实生活中的逻辑,即真和假,True表示真,False表示假。 True本质上是一个数字记作1,False记作0 | ||
字符串(String) | 描述文本的一种数据类型 | 字符串(string)由任意数量的字符组成 |
列表(List) | 有序的可变序列 | Python中使用最频繁的数据类型,可有序记录一堆数据 |
元组(Tuple) | 有序的不可变序列 | 可有序记录一堆不可变的Python数据集合 |
集合(Set) | 无序不重复集合 | 可无序记录一堆不重复的Python数据集合 |
字典(Dictionary) | 无序Key-Value集合 | 可无序记录一堆Key-Value型的Python数据集合 |
✅注释
- 了解注释的作用
-
**注释:**在程序代码中对程序代码进行解释说明的文字。
-
**作用:**注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性
- 能够使用单行注释(#开头)和多行注释(一对三个双引号 引起)
# 我是单行注释
"""
我是多行注释
哈哈哈
呵呵呵
"""
✅变量
- 变量是什么,有什么作用?
- 变量的定义格式是?
- 变量的特征是?
变量:在程序运行时,能储存计算结果或能表示值的抽象概念。简单的说,变量就是在程序运行时,记录数据用的
变量的定义格式:
变量,从名字中可以看出,表示“量”是可变的。所以,变量的特征就是,变量存储的数据,是可以发生改变的。
为什么必须要使用变量?都是输出内容,直接输出不行吗?
变量的目的是存储运行过程的数据,存储的目的是为了:重复使用
总结:
- 变量是什么,有什么作用?
变量就是在程序运行时,记录数据用的
- 变量的定义格式是?
变量名 = 变量值
- 变量的特征是?
变量的值可以改变
✅数据类型
- 掌握使用type()语句查看数据的类型
- 理解变量无类型而数据有类型的概念
在字面量的时候,我们了解到数据是有类型的。
在入门阶段接触最多的就是下面三类数据类型
类型 | 描述 | 说明 |
---|---|---|
string | 字符串类型 | 用引号引起来的数据都是字符串 |
int | 整型(有符号) | 数字类型,存放整数 如 -1,10, 0 等 |
float | 浮点型(有符号) | 数字类型,存放小数 如 -3.14, 6.66 |
我们可以通过==type()==语句来得到数据的类型:
**语法:**type(被查看类型的数据)
type()语句的使用方式:
1.在print语句中,直接输出类型信息:
2.用变量存储type()的结果(返回值):
变量有类型吗?
我们通过type(变量)可以输出类型,这是查看变量的类型还是数据的类型?
查看的是:变量存储的数据的类型。因为,变量无类型,但是它存储的数据有。
我们可能会说:字符串变量但要知道,不是变量是字符串,而是它存储了:字符串
字符串类型的不同定义方式:
-
双引号定义法:“字符串”
-
单引号定义法 :‘字符串’
-
三引号定义法:“”“字符串”“”
🧊数据类型转换
-
掌握如何在字符串、整数、浮点数之间进行相互转换
-
了解转换的注意事项
为什么要转换类型?
数据类型转换,将会是我们以后经常使用的功能,常用情况如下:
-
从文件中读取的数字,默认是字符串,我们需要转换成数字类型
-
后续学习的input()语句,默认结果是字符串,若需要数字也需要转换
-
将数字转换成字符串用以写出到外部系统
-
等等,用途很多
常见的转换语句:
语句(函数) | 说明 |
---|---|
int(x) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
str(x) | 将对象 x 转换为字符串 |
这三个语句,都是带有结果的(返回值),我们可以用print直接输出或用变量存储结果值。
类型转换注意事项:
类型转换不是万能的,毕竟强扭的瓜不会甜,我们需要注意:
-
任何类型,都可以通过str(),转换成字符串
-
字符串内必须真的是数字,才可以将字符串转换为数字
总结:
- 字符串、整数、浮点数类型转换的语句是? int(x) 、float(x) 、 str(x)
- 任何类型都可以转换成字符串?对
- 字符串可以随意转换成数字?不,前提里面必须有数字
- 浮点数转整数会丢失什么?丢失精度,也就是小数部分
✅标识符
- 理解什么是标识符
- 掌握标识符的命名规则
- 掌握变量的命名规范
什么是标识符?
编写程序时,定义的一系列名字就是标识符,用来做内容的标识,给变量、类、方法等命名。比如:
- 变量的名字
- 方法的名字
- 类的名字,等等
标识符命名规则:
- 内容限定
- 大小写敏感
- 不可使用关键字
- 内容限定就是说标识符命名中,只允许出现四类元素:英文、中文、数字、下划线(_)。其余任何内容都不被允许。
注意:不推荐使用中文;数字不可以开头
-
大小写敏感就说A和a是完成区分的,比如apple和Apple是不用的变量.
-
不可使用的关键字有如下:
所谓不可使用的关键字就是有特定用途,我们不可以使用它们作为标识符,这个很好理解,比如生活中有些特殊号码是不能被使用的,像110、120、119、122等具有特殊意义。
变量命名规范:
不同的标识符,有不同的规范。我们目前只接触到了:
变量名和函数名:
- 见名知意,使用小写字母和下划线分隔单词(即“下划线命名法”)。例如 my_variable、calculate_sum()。
类名:
- 使用“驼峰命名法”,即每个单词的首字母大写,不使用下划线。例如 MyClass、DataProcessor。
常量:
- 使用全大写字母,并用下划线分隔单词。例如 MAX_VALUE、DEFAULT_TIMEOUT。
模块名和包名:
- 使用小写字母,建议使用简单的单词或短语来命名。例如
math
、utils
。 - 如果模块名由多个单词组成,可以使用下划线分隔,例如
my_module
。
私有变量和方法:
- 使用单下划线前缀(
_
)表示该变量或方法是内部使用的,属于“非公开”部分。例如_private_var
、_helper_function()
。 - 使用双下划线前缀(
__
)进行名称重整,防止子类重写。例如__private_method()
。
特殊方法:
- 双下划线前缀和后缀用于 Python 的特殊方法(也称为魔术方法),如
__init__()
、__str__()
。这些方法用于实现类的特定行为或接口。
✅运算符
- 算术(数学)运算符
- 赋值运算符
- 复合赋值运算符
算术(数学)运算符
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | b / a 输出结果 2 |
// | 取整除 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 指数 | a**b 为10的20次方, 输出结果 100000000000000000000 |
赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | 把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7 |
复合赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
✅字符串扩展
🧊字符串的三种定义方式
-
双引号定义法:name = “字符串”
-
单引号定义法 :name = ‘字符串’
-
三引号定义法:name = “”“字符串”“”
注意:引号的嵌套
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转移字符(\)来将引号解除效用,变成普通字符串
🧊字符串拼接
使用“+”号连接字符串变量或字符串字面量即可。
注意:无法和非字符串类型进行拼接。
🧊字符串格式化
- 掌握通过占位的形式拼接字符串(字符串格式化)
语法:"%占位符" % 变量
使用%s来占位,% 表示我要占位,s 表示将变量变成字符串放入占位的地方:
**注意:**数字也能用%s占位,会自动转换成字符,多个变量占位,变量要用括号括起来,并按照占位的顺序填入
Python中,其实支持非常多的数据类型占位,最常用的是如下三类:
格式符号 | 转化 |
---|---|
%s | 将内容转换成字符串,放入占位位置 |
%d | 将内容转换成整数,放入占位位置 |
%f | 将内容转换成浮点型,放入占位位置 |
🧊格式化的精度控制
- 掌握格式化字符串的过程中做数字的精度控制
如下代码,完成字符串、整数、浮点数,三种不同类型变量的占位:
发现结果浮点数19.99,变成了19.990000输出。
可以使用辅助符号"m.n"来控制数据的宽度和精度:
- m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
- .n,控制小数点精度,要求是数字,会进行小数的四舍五入
示例:
- %5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度。
- %5.2f:表示将宽度控制为5,将小数点精度设置为2
- %.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35
🧊字符串格式化方式2
语法:f "{变量} {变量}"的方式进行快速格式化
优点:可以快速更优雅的进行字符串格式化
缺点:不能进行精度控制
所以适用于快速格式化字符串且不做精度控制。
🧊对表达式进行格式化
对于字符串格式化,还可以直接格式化一个表达式
语法:
- f"{表达式}"
- “%s%d%f” % (表达式、表达式、表达式)
✅数据输入
- 掌握input语句(函数)的使用:获取键盘输入的数据
注意:无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型
📖入门思维导图