Python第四章 Python的基础语法
第四章 Python的基础语法
4.1 数据类型
4.1.1 数据类型(简)
【说明】这里仅仅是简单地说明数据类型,具体的数据类型会放到另一章的
类型 | 描述 | 说明 |
---|---|---|
数字(Number) | 整数(int) | 整数(int),如:10、-10 |
浮点数(float) | 浮点数(float),如:13.14、-13.14 | |
复数(complex) | 复数(complex),如:4+3j,以j结尾表示复数 | |
布尔(bool) | 布尔(bool) | 布尔(bool)表达现实生活中的逻辑,即真和假,True表示真,False表示假。 True本质上是一个数字记作1,False记作0 |
字符串(String) | 描述文本的一种数据类型 | 字符串(string)由任意数量的字符组成 |
列表(List) | 有序的可变序列 | Python中使用最频繁的数据类型,可有序记录一堆数据 |
元组(Tuple) | 有序的不可变序列 | 可有序记录一堆不可变的Python数据集合 |
集合(Set) | 无序不重复集合 | 可无序记录一堆不重复的Python数据集合 |
字典(Dictionary) | 无序Key-Value集合 | 可无序记录一堆Key-Value型的Python数据集合 |
4.1.2 字面量和变量
(1) 字面量
【说明】代码中,被写在代码中的固定的值,称之为字面量
123
123.124
"hello, world"
print(1234)
print(123.123)
print("hello, world")
(2) 变量
变量:在程序运行时,能储存计算结果或能表示值的抽象概念。简单的说,变量就是在程序运行时,记录数据用的
变量的特征就是,变量存储的数据,是可以发生改变的。
变量的目的是存储运行过程的数据。存储的目的是为了:重复使用
money = 50
print("money = ", money) # money = 50
money -= 10
print("money = ", money) # money = 40
【注意】python是弱类型语言,其变量是不需要加类型的
4.1.3 查看数据类型type()
type()语句的使用方式
- 在print语句中,直接输出字面量的类型信息
- 用变量存储type()的结果(返回值)
# 方法1:直接用print打印
print(type(1)) # <class 'int'>
print(type(12.3)) # <class 'float'>
print(type("hello, world")) # <class 'str'>
# 方法2:保存到变量里面
type1 = type(1)
type2 = type(2)
type3 = type(3)
print(type1) # <class 'int'>
print(type2) # <class 'float'>
print(type3) # <class 'str'>
【说明】虽然python是弱类型语言,变量在声明的时候没有类型,但是可以将变量理解为存数据的盒子,变量无类型,但是它存储的数据有
# 查看变量的数据类型
var1 = 1
var2 = 2.313
var3 = "str"
print(type(var1)) # <class 'int'>
print(type(var2)) # <class 'float'>
print(type(var3)) # <class 'str'>
type也是有自己的类型的
print(type(type(1))) # <class 'type'>
【说明】变量的类型是 type
4.1.4 强制数据类型转换
语句(函数) | 说明 |
---|---|
int(x) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
str(x) | 将对象 x 转换为字符串 |
num_str = str(1)
print(num_str, type(num_str)) # 1 <class 'str'>
float_str = float("123.4")
print(float_str, type(float_str)) # 123.4 <class 'float'>
int_str = int("123")
print(int_str, type(int_str)) # 123 <class 'int'>
【转换注意事项】
1、任何类型,都可以通过str(),转换成字符串
2、字符串内必须真的是数字,才可以将字符串转换为数字
print(int("str")) # 错误:ValueError: invalid literal for int() with base 10: 'str'
3、浮点数转换成数字,会丢失精度,只保留整数
print(int(123.4)) # 123
print(int(-123.4)) # -123
4.2 注释
注释:在程序代码中对程序代码进行解释说明的文字。
作用:注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性。
两种注释:
- 单行注释:
# 注释
(建议在#后面加一个空格,是标准写法) - 多行注释:
""" 注释 """
# 单行注释
"""
多行注释1
多行注释2
多行注释3
"""
作用:
- 单行注释:一般用于对一行或一小部分代码进行解释
- 多行注释:对Python文件、类或方法进行解释
4.3 标识符
标识符:是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名。
【标识符的命名规则】
1、内容限定
只允许出现英文、中文,数字,下划线,并且不推荐使用中文,不能以数字开头
【说明】python中是允许使用中文的,但是不推荐使用
2、大小写敏感
Abc = "Abc"
abc = "abc"
print(Abc) # Abc
print(abc) # abc
3、不可以使用关键字
比如False、True、None(只有这三个是首字母大写)、if、else、continue等
【变量标识符的命名规范】
- 命名有含义,比如name、age、sex等
- 使用下划线命名法(python中使用下划线),比如studentnickname → student_nickname
- 英文字母全小写(变量命名)
【说明】不遵守规则会出错误、不遵守规范很不高级
4.4 运算符
【算数运算符】
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加 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 |
print(5 / 2) # 2.5
print(5 // 2) # 2
print(5 % 2) # 1
print(5 ** 2) # 25
【说明】python中的 / 号是直接按照小数去除的,不会整除,//才会整除
【赋值运算符】
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | 把 = 号右边的结果 赋给 左边的变量,如 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 |
【比较运算符】
【说明】比较运算符两侧的操作数都是bool类型的
运算符 | 描述 | 示例 |
---|---|---|
== | 判断内容是否相等,满足为True,不满足为False | 如a=3,b=3,则(a == b) 为 True |
!= | 判断内容是否不相等,满足为True,不满足为False | 如a=1,b=3,则(a != b) 为 True |
> | 判断运算符左侧内容是否大于右侧 满足为True,不满足为False | 如a=7,b=3,则(a > b) 为 True |
< | 判断运算符左侧内容是否小于右侧 满足为True,不满足为False | 如a=3,b=7,则(a < b) 为 True |
>= | 判断运算符左侧内容是否大于等于右侧 满足为True,不满足为False | 如a=3,b=3,则(a >= b) 为 True |
<= | 判断运算符左侧内容是否小于等于右侧 满足为True,不满足为False | 如a=3,b=3,则(a <= b) 为 True |
4.5 输入输出
- 数据输出:print
- 数据输入:input
4.5.1 输出
【数据输出print】
name = "jack"
print("我的名字是", name)
【说明】如果要输出多个数据,中间用
,
隔开
输出不换行
print()方法默认输出后会换行,如果要不换行的话,要指定end
print("content", end = '')
制表符 \t
使用\t能够让输出的数据格式整齐
案例:九九乘法表
i = 1
while i <= 9:
j = 1
while j <= i:
print(f"{j}*{i}={j*i}\t", end='')
j += 1
print()
i += 1
4.5.2 输入
【数据输入input】
使用input()语句可以从键盘获取输入
1、没有参数,使用print做提示符
print("请说出你的名字")
name = input()
print("你的名字是", name)
2、input("提示信息")字符串参数做提示符
name = input("请说出你的名字")
print("你的名字是", name)
3、input的返回值类型
【注意】input的返回值类型都是字符串str
val = input("请输入一个数值")
print(type(val))
4、可以通过强制类型转换来转换输入类型
【说明】类似于C中的
scanf(%d)
,一般输入的时候直接套入
age = int(input("请输入你的年龄"))
print("你的年龄是:", age)