【编程基础之Python】7、Python基本数据类型

news2024/9/25 19:14:36

【编程基础之Python】7、Python基本数据类型

  • Python基本数据类型
    • 整数(int)
      • 基本的四则运算
      • 位运算
      • 比较运算
      • 运算优先级
    • 浮点数(float)
    • 布尔值(bool)
    • 字符串(str)
  • Python数据类型变换
    • 隐式类型转换
    • 显式类型转换
    • 强制类型转换
    • 赋不同类型的值
  • 写在后面

Python基本数据类型

Python是一种动态类型语言,它支持多种基本数据类型和复合数据类型,让开发人员能够更加方便地处理不同类型的数据。本文将介绍Python中的基本数据类型,包括整数、浮点数、布尔值、字符串等。

整数(int)

整数是Python中最基本的数据类型之一,它表示整数,例如 1、2、3、5等。Python的整数类型可以表示任意大小的整数,因此可以处理非常大的整数,而不需要担心溢出的问题。

在Python中,整数可以使用十进制、二进制、八进制、十六进制等方式表示,例如:

# 十进制
a = 123

# 二进制
b = 0b1010

# 八进制
c = 0o123

# 十六进制
d = 0x123

# 很大的数
e = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999

可以使用 type() 函数来查看变量的类型,例如:

print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))

image-20230302142804886

Python中的整数运算包括基本的四则运算(加、减、乘、除)以及其他的位运算、比较运算等。

基本的四则运算

基本的四则运算在Python中与数学中的运算规则一致,分别使用加(+)、减(-)、乘(*)、除(/)和地板除(floor division,除法结果向下取整,//)符号进行运算。

a = 5
b = 3

print(a + b)   # 输出7
print(a - b)   # 输出3
print(a * b)   # 输出10
print(a / b)   # 输出1.6666666666666667
print(a // b)  # 输出1

image-20230302143630751

需要注意的是,在Python 2中整数除法的结果会自动向下取整,而在Python 3中整数除法的结果为浮点数。如果想要在Python 3中使用向下取整的除法,可以使用地板除(//)符号。

注意://得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。

image-20230302152939887

位运算

位运算是指对整数的二进制位进行操作的运算,包括按位与(&)、按位或(|)、按位异或(^)、左移(<<)和右移(>>)等运算符。

a = 5  # 二进制表示为101
b = 3  # 二进制表示为011

print(a & b)  # 输出1,二进制表示为001
print(a | b)  # 输出7,二进制表示为111
print(a ^ b)  # 输出6,二进制表示为110
print(a << 1)  # 输出10,二进制表示为1010
print(a >> 1)  # 输出2,二进制表示为10

image-20230302144708621

左移和右移运算符可以将整数的二进制位向左或向右移动一定的位数(n),向左移动等价于乘以2的n次方(2 ** n),向右移动等价于除以2的n次方。

比较运算

比较运算用于比较两个数的大小关系,包括等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)和小于等于(<=)等运算符。

a = 5
b = 3

print(a == b)  # 输出False
print(a != b)  # 输出True
print(a > b)  # 输出True
print(a < b)  # 输出False
print(a >= b)  # 输出True
print(a <= b)  # 输出False

image-20230302151624303

运算优先级

在进行复杂的数值运算时,需要注意运算优先级。在Python中,运算符的优先级从高到低分别是:

  • 幂运算 **
  • 正负号 +x, -x
  • 乘法、除法、取余运算 *, /, %, //
  • 加法、减法运算 +, -

需要注意的是,如果需要改变运算的优先级,可以使用括号将运算表达式括起来。

浮点数(float)

浮点数是带小数的数字,在Python中用浮点数类型(float)表示,例如 3.14、-0.5 等。浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)。

在Python中,浮点数的精度是有限的,因此在进行数学计算时,可能会出现精度误差。例如:

a = 0.1 + 0.2

print(a)  # 输出0.30000000000000004

image-20230302152243257

可以使用 round() 函数来四舍五入浮点数,例如:

a = 0.1 + 0.2
a = round(a, 2)

print(a)  #输出0.3

image-20230302152513823

浮点数与整数一样,也支持四则运算、比较运算等,但不支持位运算。

布尔值(bool)

布尔值只有两个取值TrueFalse,用于表示真或假。在Python中,可以将任何值转换为布尔值,使用 bool() 函数即可。例如:

print(bool(0))      # 输出False
print(bool(1))      # 输出True
print(bool(''))     # 输出False
print(bool('abc'))  # 输出True

image-20230302154535161

布尔类型在Python中广泛应用于条件判断和循环等控制语句中,例如 if 语句、while 循环和 for 循环等。

a = True
b = False

if a and not b:
    print("a是True并且b是False")

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

while a or b:
    print("Looping...")
    a = a and b
    b = a and b

image-20230302155011095

字符串(str)

字符串是一组字符的序列,用于表示文本。在Python中,字符串类型(str)可以使用单引号、双引号或三引号来定义,例如:‘hello’、 “world” 等。

字符串是不可变的,因此不能修改字符串中的字符。

可以使用索引(下标)访问字符串中的字符,例如:

s = 'hello'

print(s[0])   # 输出'h'
print(s[-1])  # 输出'o'

image-20230302155238864

可以使用字符串的切片访问字符串中的字符,或者创建一个新的字符串,例如:

s1 = 'hello'
s2 = s1[1:4]

print(s1[1:3])   # 输出'ell'
print(s2)        # 输出'ello'

image-20230302155411444

可以使用加号(+)将两个字符串连接起来,使用乘号(*)可以将字符串重复多次,例如:

s1 = 'hello'
s2 = 'world'

print(s1 + s2)  # 输出'helloworld'

image-20230302155457494

除了常规的字符串操作之外,Python还提供了一些内置方法来处理字符串。例如,我们可以使用 split() 方法来将字符串分割成列表,使用 strip() 方法来去除字符串两端的空格,使用 replace() 方法来替换字符串中的某个字符或子串等等。

s1 = "hello,world"
lst = s1.split(",")                 # 将字符串以逗号为分隔符,分割成列表
s2 = s1.strip()                     # 去除字符串两端的空格
s3 = s1.replace("world", "Python")  # 将字符串中的"world"替换为"Python"
print(s1)
print(lst)
print(s2)
print(s3)

image-20230302155659552

Python数据类型变换

在Python中,数据类型并不是一成不变的,数据类型可以根据实际情况做变换。

Python是一种动态语言,变量在使用之前不需要指定数据类型,而是在运行时根据赋值的值自动确定类型,因此Python的数据类型变换非常灵活。

隐式类型转换

在Python中,有些类型之间的运算是自动进行类型转换的,这种类型转换称为隐式类型转换。

例如,当整数和浮点数进行运算时,整数会自动转换为浮点数:

a = 5     # a为整数
b = 3.14  # b为浮点数
c = a + b # a自动转换为浮点数,c为8.14

在隐式类型转换时,Python会自动选择合适的类型进行转换,但是这种转换不一定总是符合我们的期望,因此有时需要手动进行类型转换。

显式类型转换

Python中可以使用一些内置函数进行显式类型转换,常用的内置函数包括int()、float()、str()、bool()等。

a = "5"       # a为字符串
b = int(a)    # a转换为整数,b为5
c = float(b)  # b转换为浮点数,c为5.0
d = bool(c)   # c转换为布尔类型,d为True
e = str(d)    # d转换为字符串,e为"True"
print(a, type(a))
print(b, type(b))
print(c, type(c))
print(d, type(d))
print(e, type(e))

image-20230302160720193

在进行类型转换时,有时会出现类型不匹配的错误,例如在字符串中包含非数字字符时使用int()函数进行转换会出错。因此在进行类型转换时需要谨慎,并确保数据类型的一致性。

强制类型转换

有时候,我们需要将一个对象强制转换为另一个类型。Python中可以使用各个数据类型所对应的构造函数进行强制类型转换。例如,可以使用int()构造函数将一个浮点数或字符串转换为整数。

a = 5.8     # a为浮点数
b = int(a)  # a强制转换为整数,b为5

print(a, type(a))
print(b, type(b))

image-20230302162048423

强制类型转换可能会丢失数据,例如将一个浮点数强制转换为整数时,会将小数部分直接截断,导致数据的精度损失。

赋不同类型的值

在Python中,对于同一个变量,还可以通过赋值的方式改变变量的类型。

a = 5
print("现在我是整数:", a, type(a))
a = 5.6
print("现在我是浮点数:", a, type(a))
a = True
print("现在我是布尔值:", a, type(a))
a = "变来变去"
print("现在我是字符串:", a, type(a))

image-20230302162519157

写在后面

Python是一门强大的编程语言,拥有丰富的基本数据类型。在本篇文章中,我们介绍了Python的几种基本数据类型:整数、浮点数、布尔值和字符串,以及它们之间的相互转换。同时,我们还讨论了Python中的算术运算、比较运算和逻辑运算,以及它们的应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/382329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

tensorflow2.4--2.回归问题分析

文章目录前言流程案例操作前言 流程 回归问题预测连续值,在某个区间内变动. 常见的线性回归问题模型是yaxb,然而现实世界由于大量的数据偏差以及复杂度,同时还有大量的噪声,往往达不到如此的精确解,实际解决问题时需要考虑噪声的存在 对于噪声,往往我们已经假设了它符合高斯…

springboot内嵌Tomcat 安全漏洞修复

漏洞扫描提示的是tomcat-embed-core[CVE-2020-1938]&#xff0c;解决方式是升级tomcat的版本。 该漏洞影响的版本&#xff1a; Apache Tomcat 9.x < 9.0.31 Apache Tomcat 8.x < 8.5.51 Apache Tomcat 7.x < 7.0.100 Apache Tomcat 6.x 其余的安全漏洞也可以通过…

hometown-h5-template 一个开箱即用的前端H5解决方案 【无标题】

前言 大家好&#xff0c;我是 HoMeTown&#xff0c;最近不很忙&#xff0c;整理一套架子出来&#xff0c;有兴趣朋友可以看看&#xff0c;我自己已经投入生产使用了&#xff0c;大家看个人情况&#xff0c;选择性使用 GitHub仓库。 ✨ hometown-h5-template &#x1f4a5; 轻…

JavaSE21-集合1-set

文章目录一、集合概念二、set集合1、set集合的特点2、HashSet2.1 特点2.2 创建对象2.3 常用方法2.4 遍历2.4.1 foreach遍历2.4.2 使用迭代器遍历2.4.3 转换为数组遍历一、集合概念 集合就是用于存储多个数据的容器。相对于具有相同功能的数组来说&#xff0c;集合的长度可变会…

速度计算-课后程序(JAVA基础案例教程-黑马程序员编著-第十二章-课后作业)

【案例12-2】&#xff1a;速度计算 【案例介绍】 1.案例描述 本案例要求使用反射技术编写一个速度计算程序&#xff0c;计算某种交通工具的行驶速度。现有两种工具&#xff1a;Bike和 Plane&#xff0c;其中Bike的速度运算公式为&#xff1a;A*B/C&#xff0c;Plane的速度运…

Maven多模块开发

POM主要功能 maven学习教程很多&#xff0c;就不在赘述可以参考以下网站&#xff0c;这里只说明maven实际运用。 https://blog.csdn.net/xwh3165037789/article/details/121545762 菜鸟教程 Maven POM POM是在使用Maven构建项目最重要的部分&#xff0c; POM 中所有信息位于&l…

史上体积最小、功能最多的VxRail即将上市!

有史以来      最小、最灵活、最多的      VxRail集群      Dell VxRail VD-4000重磅登场!    戴尔即将全球推出VxRail超融合基础架构系统——基于PowerEdge XR4000的VxRail VD-4000(计划今年2月底全球同步上市)。      VD-4000具备小型专用外形,这种新的外…

帮助小型企业实现业务增长的7种数字营销策略

数字营销一直在不断地变化和发展&#xff0c;在过去的几年里我们已经见识到了其迅猛的发展速度。虽然我们在数字营销中看到了一些新的趋势&#xff0c;但对于小型企业来说很难利用并发挥其优势。相比较大型企业&#xff0c;小型企业的预算和资源通常有限&#xff0c;所以他们很…

Qt插件开发总结5--主界面嵌入插件UI

文章目录一、前言二、效果展示三、嵌入插件UI1、插件接口文件添加UI指针2、插件子项目工程建立UI类3、插件类中创建UI类、使UI指针指向创建的UI类4、插件元信息中添加widget键值对&#xff0c;指示插件UI嵌入主界面中的位置5、主界面中预留接入点tabWidget6、插件管理器中元数据…

9 怎么登录VNC

1&#xff09;首先在ssh登录后启动vncserver。登陆后输入下面的指令来创建自己的VNC。 命令vncserver :16 –geometry 1900x1000 其中&#xff1a;16是分配的端口号&#xff0c;1900x1000是分辨率。如果没有响应&#xff0c;建议执行下面操作后再次重复上面操作。 命令&#xf…

拦截器和过滤器的区别是什么

过滤器 过滤器Filter是基于Servlet实现。Servlet的工作原理是拦截配置好的客户端请求&#xff0c;然后对Request和Response进行处理。Filter过滤器随着web应用的启动而启动&#xff0c;只初始化一次。 过滤器的配置比较简单&#xff0c;直接实现Filter 接口就可以了&#xff…

Python 虚拟环境的使用

PyCharm 创建的虚拟环境与使用 workon 命令创建的虚拟环境在本质上没有区别&#xff0c;它们都是 Python 的虚拟环境。 使用 PyCharm 创建工程时&#xff0c;使用可以使用曾经工程的虚拟环境&#xff0c;或者新建一个虚拟环境来安装 Python 的库&#xff0c;又或者使用 workon…

org.postgresql.util.PSQLException

1.使用springboot整合postgresql时报错&#xff1a;org.postgresql.util.PSQLException 1.1依赖 使用spring boot和postgresql搭建简单demo <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</arti…

Git概述

查看git版本&#xff1a; git --version1、Git概述 Git 是一个免费的、开源的分布式版本控制系统&#xff0c;可以快速高效地处理从小型到大型的各种项目。 Git 易于学习&#xff0c;占地面积小&#xff0c;性能极快。它具有廉价的本地库&#xff0c;方便的暂存区域和多个工作…

【C++基础入门】运算符、程序流程结构(if语句,for循环,switch语句等)

一&#xff1a;运算符 作用&#xff1a;用于执行代码的运算 运算符类型作用算术运算符用于处理四则运算赋值运算符用于将表达式的值赋给变量比较运算符用于表达式的比较&#xff0c;并返回一个真值或假值逻辑运算符用于根据表达式的值返回真值或假值 1.1 算术运算符 作用 &a…

PDF编辑/PDF浏览/PDF打印:PDFPrinting.NET Crack

PDFPrinting.NET高级 PDF 编辑库&#xff0c;可完全控制您的 PDF 创建工作流程 我们为 PDF 创建和编辑提供高级和低级 API。从简单的文档拆分到单个元素的精确删除。 从头开始创建 PDF 文档。 编辑现有文件。 支持创建、插入或删除 PDF 元素。 允许更改 PDF 的加密和压缩。 自…

计算机组成原理4小时速成7:存储器和cpu的连接,位扩展,字扩展,存储器的校验,汉明码编码纠错检错

计算机组成原理4小时速成7&#xff1a;存储器和cpu的连接&#xff0c;位扩展&#xff0c;字扩展&#xff0c;存储器的校验&#xff0c;汉明码编码纠错检错 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人&#xff0c;可能很多算法学生都…

C/C++每日一练(20230302)

目录 1. 个位数是6&#xff0c;且能被3整除的五位数共有多少个&#xff1f; ☆ 2. 不同方式求n的阶乘 ★ 3. 报数游戏 ★☆ 1. 个位数是6&#xff0c;且能被3整除的五位数共有多少个&#xff1f; 答案&#xff1a; 3000 &#xff0c;代码略 2. 不同方式求n的阶乘 求n的…

sdwan方案有哪些 SD-WAN怎么搭建

随着sdwan网络架构的形成到目前的广泛应用到各行业之中&#xff0c;足见sdwan方案已经逐步的走向成熟。sdwan软件定义网络可在包括公共Internet&#xff0c;MPLS和宽带在内的标准网络传输服务上运行&#xff0c;解决了很多跨区域之间网络传输数据的难题。那么&#xff0c;sdwan…

软件测试4

一 form表单标签 1.form表单标签里面就是所有用户填写的表单数据&#xff1b; action“xxx.py”把表单数据提交给哪一个后台程序去处理 method“post” 传递数据时候的方式方法&#xff0c;post代表隐式提交数据、get明文传送数据 2.input标签的type类型 type“text” 普通的输…