【Python数据类型的奥秘】:构建程序基石,驾驭信息之海

简介: 【Python数据类型的奥秘】:构建程序基石,驾驭信息之海

🚀Python数据类型

🌈1. 基本概念

整数(int):整数是没有小数部分的数字。在Python中,整数可以是正数、负数或零。 整数类型在Python 3中没有大小限制,因此可以处理非常大的整数。可以使用内置函数“int()”将其他类型的对象转换为整数。

浮点数(float):浮点数是带有小数部分的数字。在Python中,浮点数可以是正数、负数或零。 Python使用IEEE 754标准来表示浮点数。然而,与整数不同,浮点数在进行运算时可能会遇到精度问题。可以使用内置函数"float()"将其他类型的对象转换为浮点数。


复数(complex):复数由实数部分和虚数部分组成。实数部分和虚数部分都可以是浮点数。在Python中,虚数部分用后缀“j”或“J”来表示。例如,(3+4j)表示实部为3,虚部为4的复数。可以使用内置函数“complex()”将其他类型的对象转换为复数。


布尔型(bool):布尔型只有两个值,True和False。它们通常用于控制流程语句中的条件。可以使用内置函数"bool()"将其他类型的对象转换为布尔类型。非零的数字、非空的字符串、非空的列表、元组或字典都会被转换为True,而其他的值都会被转换为False。

整数


  • 整数:int
  • 例如:1, 2, 3, 4, 5, 6…

浮点数


  • 浮点数:float(其实就是小数 )
  • 例如:1.10

布尔值


  • 布尔值:bool
  • 只有:True(逻辑真), False(逻辑假)
  • True(逻辑真):在计算机里面数值形式为1
  • False(逻辑假):在计算机里面数值型是0
  • False(逻辑假)的情况:False,None,0 ,“”,(),[],{}
  • 其余情况均为True(逻辑真)

复数


  • 复数:complex
  • 例如:1+2j: 1为实部,2j为虚部
  • 复数了解即可,不做重点


⭐2. 转化

常规情况下数值类型是可以相互转化的,但是复数转化会比较特殊,接下来看看如下示例:

【示例1】:整形转布尔/浮点型

int1 = 1
# 将整数 通过 bool函数 转化为 bool类型
print(bool(int1))  
# 将整数 通过 float函数 转化为 float类型
print(float(int1))  

【示例2】:布尔型转整/浮点型

bool1 = True
# 将布尔值 通过 int函数 转化为 int类型
print(int(bool1))  
# 将布尔值 通过 float函数 转化为 float类型
print(float(bool1))

【示例3】:浮点型转布尔/整形

float1 = 1.23
# 将浮点数 通过 bool函数 转为 bool类型
print(bool(float1))  
# 将浮点数 通过 int函数 转为 int类型
print(int(float1))

注意:False(逻辑假)的情况:False,None,0 ,“”,(),[],{} 除了这些情况均为True,不用纠结浮点数, 0.0 0.000 等均为0,因此布尔型为False;有想不通的地方实践出真理,理论得经得住实践的考验。

【示例4】:复数转整型

复数无法直接转换成整数(其它也一样)。因为复数包括实部和虚部两个部分,而整数只有一个部分。如果要将复数转换为整数,则需要确定如何处理实部和虚部。

a = 3 + 4j  # 定义一个复数

# 取实部、虚部并进行取整操作
real_part = int(a.real)
imag_part = int(a.imag)

# 输出实部、虚部的整数值
print(real_part)  
print(imag_part)  

使用int()函数对复数的实部和虚部分别进行了取整操作,并分别存储在变量real_part和imag_part中。

注意:这种取整方式会丢失复数的一部分信息,因此可能会导致精度损失。所以,复数转换为整数需要考虑具体情况,并根据实际需求进行相应的数据处理。

👊3. 数值运算


符号 举例 结果
+ 1+1 2
- 3-1 2
* 3*2 6
/ 6/2 3
// 向下取整 7//2 3(7/2 – 3.5)
% 取余 7/2 1(7/2 – 3 – 1)
** 2**4 16 (4个2相乘)


  1. 加法运算符 (+): 用于将两个数值相加。
result = 10 + 5  # result = 15
  1. 减法运算符 (-): 用于从一个数值中减去另一个数值。
result = 10 - 5  # result = 5
  1. 乘法运算符 (*): 用于将两个数值相乘。
result = 10 * 5  # result = 50
  1. 除法运算符 (/): 用于将一个数值除以另一个数值,结果为浮点数。
result = 10 / 5  # result = 2.0
  1. 整除运算符 (//): 用于将一个数值除以另一个数值,结果向下取整为整数。
result = 10 // 5  # result = 2
  1. 取余运算符 (%): 用于计算除法的余数。
result = 10 % 3  # result = 1
  1. 幂运算符 (**): 用于计算一个数的幂。
result = 2 ** 3  # result = 8
  1. 取反运算符 (-): 用于改变数值的符号。
result = -10  # result = -10
  1. 增量赋值运算符: 如 +=, -=, *=, /=, //=, %= 和 **= ,用于将运算结果直接赋值回原变量。
x = 10
x += 5  # 相当于 x = x + 5; 现在 x = 15
• 1
• 2


💥4. 数值运算扩展(math库常用函数)
  • math库(python内置模块)
  • 调用:import math


Python 的 math 库是一个内置函数库,提供了各种数学运算的函数,包括三角函数、指数函数、对数函数、幂函数等等。使用 math 库中的函数可以方便地进行常见数值计算。

math 库中常用的函数:

  • fabs(x):返回 x 的绝对值
  • ceil(x):返回不小于 x 的最小整数
  • floor(x):返回不大于 x 的最大整数
  • sqrt(x):返回 x 的平方根
  • pow(x, y):返回 x 的 y 次方
  • exp(x):返回以 e 为底的 x 的指数
  • log(x):返回以 e 为底的 x 的自然对数
  • sin(x):返回 x 的正弦值,x 为弧度制
  • cos(x):返回 x 的余弦值,x 为弧度制

tan(x):返回 x 的正切值,x 为弧度制


  1. math.ceil(x) - 返回大于或等于 x 的最小整数。
import math
x = 3.7
print(math.ceil(x))  # 输出: 4
  1. math.floor(x) - 返回小于或等于 x 的最大整数。
x = 3.7
print(math.floor(x))  # 输出: 3
  1. math.sqrt(x) - 计算 x 的平方根。
x = 16
print(math.sqrt(x))  # 输出: 4.0
  1. math.exp(x) - 返回 e(自然对数的底)的 x 次幂。
x = 1
print(math.exp(x))  # 输出: 2.718281828459045
  1. math.log(x[, base]) - 计算 x 的对数,如果不提供 base,默认为自然对数。
x = 10
print(math.log(x))  # 输出自然对数
print(math.log(x, 10))  # 输出以10为底的对数
  1. math.sin(x) - 计算 x 弧度的正弦值。
x = math.pi / 2
print(math.sin(x))  # 输出: 1.0
  1. math.cos(x) - 计算 x 弧度的余弦值。
x = math.pi
print(math.cos(x))  # 输出接近: -1.0
  1. math.tan(x) - 计算 x 弧度的正切值。
x = math.pi / 4
print(math.tan(x))  # 输出接近: 0.9999999999999999
  1. math.pi - 提供圆周率 π 的值。
print(math.pi)  # 输出: 3.141592653589793
  1. math.e - 提供自然对数的底 e 的值。
print(math.e)  # 输出: 2.718281828459045
  1. math.pow(x, y) - 计算 x 的 y 次幂。
x = 2
y = 3
print(math.pow(x, y))  # 输出: 8.0
  1. math.fabs(x) - 返回 x 的绝对值,适用于浮点数。
x = -3.5
print(math.fabs(x))  # 输出: 3.5
  1. math.factorial(x) - 计算 x 的阶乘(x 必须是非负整数)。
x = 5
print(math.factorial(x))  # 输出: 120
  1. math.gcd(a, b) - 计算 a 和 b 的最大公约数。
a = 48
b = 18
print(math.gcd(a, b))  # 输出: 6
方法 作用 举例
math.ceil 向上取整 math.ceil(1.24) # 2
math.floor 向下取整 math.floor(1.24) # 1
math.pi 常数π,圆周率3.141592653589793

注意:使用这些函数前需要先通过 import math 导入 math 模块。

相关文章
|
3天前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
|
3天前
|
存储 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第39天】在数字时代的浪潮中,掌握编程技能如同掌握了一门新时代的语言。本文将引导你步入Python编程的奇妙世界,从零基础出发,一步步构建你的第一个程序。我们将探索编程的基本概念,通过简单示例理解变量、数据类型和控制结构,最终实现一个简单的猜数字游戏。这不仅是一段代码的旅程,更是逻辑思维和问题解决能力的锻炼之旅。准备好了吗?让我们开始吧!
|
11天前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
5天前
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
8天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
27 3
|
8天前
|
开发框架 前端开发 JavaScript
利用Python和Flask构建轻量级Web应用的实战指南
利用Python和Flask构建轻量级Web应用的实战指南
25 2
|
8天前
|
机器学习/深度学习 JSON API
Python编程实战:构建一个简单的天气预报应用
Python编程实战:构建一个简单的天气预报应用
19 1
|
8天前
|
机器学习/深度学习 数据采集 搜索推荐
利用Python和机器学习构建电影推荐系统
利用Python和机器学习构建电影推荐系统
23 1
|
15天前
|
存储 数据采集 数据库
用 Python 爬取淘宝商品价格信息时需要注意什么?
使用 Python 爬取淘宝商品价格信息时,需注意法律和道德规范,遵守法律法规和平台规定,避免非法用途。技术上,可选择 Selenium 和 Requests 库,处理反爬措施如 IP 限制、验证码识别和请求频率控制。解析页面数据时,确定数据位置并清洗格式。数据存储可选择 CSV、Excel、JSON 或数据库,定期更新并去重。还需进行错误处理和日志记录,确保爬虫稳定运行。
|
10天前
|
存储 机器学习/深度学习 搜索推荐
Python编程入门:从零开始构建你的第一个程序
【10月更文挑战第32天】本文旨在通过浅显易懂的方式引导编程新手进入Python的世界。我们将一起探索Python的基础语法,并通过实例学习如何构建一个简单的程序。文章将不直接展示代码,而是鼓励读者在阅读过程中自行尝试编写,以加深理解和记忆。无论你是编程初学者还是希望巩固基础知识的开发者,这篇文章都将是你的良师益友。让我们开始吧!