【深度学习】 Python 和 NumPy 系列教程(一):Python基本数据类型:1、数字(整数、浮点数)及相关运算;2、布尔值

2024-07-29 21:13:26 浏览数 (1)

一、前言

Python是一种高级编程语言,由Guido van Rossum于1991年创建。它以简洁、易读的语法而闻名,并且具有强大的功能和广泛的应用领域。Python具有丰富的标准库和第三方库,可以用于开发各种类型的应用程序,包括Web开发、数据分析、人工智能、科学计算、自动化脚本等。

Python本身是一种伟大的通用编程语言,在一些流行的库(numpy,scipy,matplotlib)的帮助下,成为了科学计算的强大环境。本系列将介绍Python编程语言和使用Python进行科学计算的方法,主要包含以下内容:

  • Python:基本数据类型、容器(列表、字典、集合、元组)、函数、类
  • Numpy:数组、数组索引、数据类型、数组数学、广播
  • Matplotlib:绘图,子图,图像
  • IPython:创建笔记本,典型工作流程

二、实验环境

Python 3.7

运行下述命令检查Python版本

代码语言:javascript复制
 python --version 

三、Python基本数据类型

Python的基本数据类型包括:

  1. 整数(int):表示整数值,例如1、2、-3等。
  2. 浮点数(float):表示带有小数点的数值,例如3.14、2.5等。
  3. 布尔值(bool):表示真(True)或假(False)的逻辑值。
  4. 字符串(str):表示文本数据,使用引号(单引号或双引号)括起来,例如"Hello"、'Python'等。
  5. 列表(list):表示一组有序的元素,可以包含不同类型的数据,用方括号括起来,例如[1, 2, 3]、['apple', 'banana', 'orange']等。
  6. 元组(tuple):类似于列表,但是不可修改,用圆括号括起来,例如(1, 2, 3)、('apple', 'banana', 'orange')等。
  7. 集合(set):表示一组唯一的元素,用大括号括起来,例如{1, 2, 3}、{'apple', 'banana', 'orange'}等。
  8. 字典(dict):表示键值对的映射关系,用大括号括起来,例如{'name': 'John', 'age': 25}等。

1. 数字

  • a. 整数(int)
    • 整数是没有小数部分的数字,可以是正数、负数或零。
    • 没有取值范围限制
  • b. 浮点数(float)
    • 浮点数则包括整数部分和小数部分,可以表示小数和科学计数法形式的数字。
    • 取值范围和小数精度都存在限制,但常规计算可忽略
  • c. 运算
    • 运算符
      • 加( )、减(-)、乘(*)、除(/)、取模(%)、整除(//)、幂运算(**)

注:以下运算过程连续进行

加法运算符( ):

代码语言:javascript复制
x = x   10
print(x)  # 输出 531

减法运算符(-):

代码语言:javascript复制
x = x - 100
print(x)  # 输出 431

乘法运算符(*):

代码语言:javascript复制
x = x * 2
print(x)  # 输出 862

除法运算符(/):

代码语言:javascript复制
x = x / 3
print(x)  # 输出 287.3333333333333

取模运算符(%):

代码语言:javascript复制
x = x % 100
print(x)  # 输出 87.3333333333333

整除运算符(//):

代码语言:javascript复制
x = x // 10
print(x)  # 输出 8.0

幂运算符(**):

代码语言:javascript复制
x = x ** 3
print(x)  # 输出 512

增强操作符

  • =、-=、*=、/=、%=、//=、**=

= 增强操作符:

代码语言:javascript复制
x  = 10  # 等同于 x = x   10
print(x)  # 输出 522

-= 增强操作符:

代码语言:javascript复制
x -= 100  # 等同于 x = x - 100
print(x)  # 输出 422

*= 增强操作符:

代码语言:javascript复制
x *= 2  # 等同于 x = x * 2
print(x)  # 输出 844

/= 增强操作符:

代码语言:javascript复制
x /= 3  # 等同于 x = x / 3
print(x)  # 输出 281.3333333333333

%= 增强操作符:

代码语言:javascript复制
x %= 100  # 等同于 x = x % 100
print(x)  # 输出 81.33333333333331

//= 增强操作符:

代码语言:javascript复制
x //= 10  # 等同于 x = x // 10
print(x)  # 输出 8.0

**= 增强操作符:

代码语言:javascript复制
x **= 3  # 等同于 x = x ** 3
print(x)  # 输出 512.0

代码整合

代码语言:javascript复制
x = 521
print(x, type(x))

# 使用运算符对 x 进行操作
x = x   10
print(x)  # 输出 531

x = x - 100
print(x)  # 输出 431

x = x * 2
print(x)  # 输出 862

x = x / 3
print(x)  # 输出 287.3333333333333

x = x % 100
print(x)  # 输出 87.3333333333333

x = x // 10
print(x)  # 输出 8.0

x = x ** 3
print(x)  # 输出 512.0

# 使用增强操作符对 x 进行操作
x  = 10
print(x)  # 输出 522.0

x -= 100
print(x)  # 输出 422.0

x *= 2
print(x)  # 输出 844.0

x /= 3
print(x)  # 输出 281.3333333333333

x %= 100
print(x)  # 输出 81.3333333333333

x //= 10
print(x)  # 输出 8.0

x **= 3
print(x)  # 输出 512.0
d. 运算中的类型转换

注意到,上述运算中除了整数与整数之间的运算以外,运算结果均为浮点数;

(特例:整数与整数之间的除法)

e. 运算函数abs、max、min、int、float
  • abs():绝对值;
  • max(x1,x2,…,xn):返回最大值;
  • min(x1,x2,…,xn) :返回最小值;
  • int(x):将x强制转换为整数类型;
  • float(x):将x强制转换为浮点数类型;
代码语言:javascript复制
# 绝对值
abs_value = abs(-10)
print(abs_value)  # 输出: 10

# 最大值
max_value = max(5, 8, 2, 10)
print(max_value)  # 输出: 10

# 最小值
min_value = min(5, 8, 2, 10)
print(min_value)  # 输出: 2

# 强制转换为整数
integer_value = int(3.14)
print(integer_value)  # 输出: 3

# 强制转换为浮点数
float_value = float("3.14")
print(float_value)  # 输出: 3.14

2. 布尔值(bool)

布尔值(Booleans)是Python中的一种基本数据类型,用于表示真(True)或假(False)的值。布尔值通常用于条件判断和逻辑运算。 布尔值在Python中非常重要,因为它们在控制流语句(例如if语句和while循环)中扮演着关键角色。条件表达式的结果可以是布尔值,根据条件表达式的真假来执行不同的代码块。 布尔值有两个可能的取值:True和False。它们是Python中的关键字,不同于其他变量名。 下面是一些布尔运算符和布尔表达式的例子:

  1. 逻辑与(and):如果两个条件都为True,结果为True。例如:True and False 的结果是 False。
  2. 逻辑或(or):如果至少一个条件为True,结果为True。例如:True or False 的结果是 True。
  3. 逻辑非(not):对布尔值取反。例如:not True 的结果是 False。

布尔值可以与其他数据类型进行比较和运算。例如,可以将布尔值与整数、浮点数或字符串进行比较,或者在条件表达式中使用布尔值来控制程序的执行流程。

代码语言:javascript复制
t, f = True, False
print(type(t))
a. 运算
代码语言:javascript复制
print(t and f)  # 逻辑与运算,输出:False
print(t or f)   # 逻辑或运算,输出:True
print(not t)    # 逻辑非运算,输出:False
print(t != f)   # 不等于比较运算,输出:True
b. 类型转换

布尔类型可以转换为int类型

代码语言:javascript复制
print(t, t 0)  # 输出:True 1,因为True可以表示为1,所以t 0的结果是1
print(f, f 0)  # 输出:False 0,因为False可以表示为0,所以f 0的结果是0
print(t, t 1)  # 输出:True 2,因为True可以表示为1,所以t 1的结果是2
print(f, f 1)  # 输出:False 1,因为False可以表示为0,所以f 1的结果是1

0 人点赞