百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python入门基础系列(六)——基本数据类型

off999 2024-10-16 11:24 21 浏览 0 评论

通常,数据类型定义格式,设置数据的上限和下限,以便程序可以正确使用它。但是,Python数据类型不仅仅是这些。在Python中,我们不需要声明一个明确提及数据类型的变量。这个功能被称为动态类型。

Python在运行时直接根据语法确定文字的类型。例如 - 引号标记字符串值的声明,方括号表示字典的列表和大括号。此外,非十进制数将被赋值为整数类型,而具有小数点的将是浮点型。

包括变量,函数,Python中的所有模块都是一个对象。另一个有趣的事实是变量没有类型,而只是Python中的标签。它是与一个类型相关联的价值。因此,同一个变量,标签可以引用不同Python数据类型的值。

以下是Python中常用的重要数据类型列表。我们将用例子来讨论它们中的每一个。

1.Booleans 布尔

2.Numbers 数字

3.Strings 字符串

4.Bytes 字节

5.Lists 清单

6.Tuples 元组

7.Sets 集

8.Dictionaries 字典

从基本到高级的Python数据类型

Python数据

1.布尔类型

布尔是几乎所有编程语言都有的数据类型,Python也是如此。Python中的布尔值可以有两个值 - True或False。这些值是常量,可用于分配或比较布尔值。按照下面给出的一个简单例子:

在Python中创建布尔条件时,我们可以跳过代码中的显式比较。我们仍然会得到相同的行为。

上面的代码将产生与前一个相同的输出。这是因为声明

if condition:

相当于,

if condition == True:

接下来,Python中的表达式也可以产生布尔结果。

例如 -条件块中的表达式将产生一个布尔值。Python创建布尔上下文来评估表达式。

无论表达的是,Python将使用布尔上下文来确定它的真值。由于Python有许多数据类型,因此它们将按照自己的规则操作以在布尔上下文中查找结果。

在某些情况下,布尔常量“True”和“False”也可能作为数字。

从上面的例子可以看出,True是1,False的值是0。在算术运算中它们会变成数字。

2.数字

数字是最重要的Python数据类型之一。与只有整数和浮点数的许多语言不同,Python将复数引入为一种新的数字类型。这里有几点是值得你思考的。

Python中的数字使用以下关键字进行分类。

int,float和complex

Python有一个内置的函数类型() 来确定变量或值的数据类型。

另一个内置函数isinstance()用于测试对象的类型。

在Python中,我们可以在数字后面添加一个“j”或“J”来使它虚构或复杂。

例如:

为了形成一个复数,我们甚至可以使用该类型作为构造函数。看下面的例子。

只要所需的内存可用,Python中的整数没有任何大小限制。

浮点型数字可以精确到15位小数。

注:上面的这个例子中的dig是浮点数中的最大小数位数。

3.字符串

在单引号或双引号内包含的一个或多个字符序列在Python中被视为String。任何字母,数字或符号都可能成为刺痛的一部分。

Python还支持多行字符串,这些字符串在开始时需要三个引号,最后一个需要一个引号。

'多行字符串\ n开始并以\三重引号结尾。''多行字符串\ n开始并以\三重引号结尾。'

而且,Python中的字符串是不可变的。这意味着内存将被分配一次,然后重新使用。

您可以看到第二个字符串与第一个字符串共享相同的地址。

Python有两个流行版本,分别是2.7和3.4。全球大多数程序员都使用他们中的任何一个。Python 2中的字符串默认为非Unicode(ASCII),但也支持Unicode。

另一方面,Python 3字符串都是Unicode(UTF-8)。

Python 2.X中的字符串

Python3.X中的字符串

Python允许使用特殊的方括号语法来分割字符串以提取子字符串。看下面的例子。

4.字节

字节在Python中是不可变的类型。它可以存储范围从0到255的字节序列(每个8位)。与数组类似,我们可以通过使用索引来获取单个字节的值。但我们无法修改这个值。

以下是一个字节和字符串之间的一些区别:

1.字节对象包含一系列字节,而字符串存储字符序列。

2.字节是机器可读的对象,而字符串只是人类可读的形式。

3.由于该字节是机器可读的,所以它们可以直接存储到磁盘中。而字符串首先需要在进入磁盘之前进行编码。

一种场景,其中字节在启用缓冲时执行I / O操作时很重要。例如,我们有一个通过网络连续接收数据的程序。它在等待消息标题和终止符出现在流中之后解析日期。它不断将传入的字节附加到缓冲区。

使用Python字节对象,使用下面的伪代码很容易对上述场景进行编程。

在这篇文章的后面的部分中,我们也将介绍字节和字符串的相互转换。

5.列表

Python列表是一个类似构造的数组,它按顺序存储任意类型的对象。它非常灵活并且没有固定的尺寸。列表中的索引从Python开始为零。

它是各种数据类型的异构集合。例如,列表对象可以将文件存储在文件夹中,或者将公司中的员工数据存储起来等。

Python列语法

Python中的列表可以通过将元素放在用逗号分隔的方括号内来声明。

列表对象是可变的。Python允许通过赋值以及通过内置列表方法来修改列表或其元素。

嵌套在列表中

有趣的是,一个列表可以包含另一个列表。这样的列表被称为嵌套列表。

切片清单

该列表也是支持切片的Python数据类型之一,就像我们之前使用Strings学到的一样。通过切片运算符[],我们可以从列表中提取元素或一堆元素。

6.元组

元组是由逗号分隔的Python对象的异构集合。这意味着不同数据类型的对象可以共存于一个元组中。元组和列表有些相似,因为它们共享以下特征。

l两个对象都是有序的序列。

l它们支持索引和重复。

l允许嵌套。

l他们可以存储不同类型的值。

Python元组语法

用括号括起来的元素定义一个元组,其括号内用逗号分隔。

示例 - 定义一个元组

示例 - 嵌套元组

示例 - 以元组重复

重要说明:在上述示例中进行切片时,“2”表示从元组中的第三个元素开始(切片索引从0开始)。“4”意味着结束元组中的第五个元素,但排除它。

元组与列表有什么不同?

元组与列表有些不同,因为它们是不可变的。Python在创建后不允许修改元组。我们以后不能添加或删除任何元素。相反,Python期望我们用更新后的元素序列创建一个新的元素。

如果元组具有可变对象作为元素会怎么样?

在这里有个惊喜,元组是禁止修改的。但是Python不会在元素上执行它。这意味着我们可以更新它们,如果它们是可变对象。

为什么需要Tuple作为Python数据类型之一?

这里有几个想法支持元组。

1.Python使用元组从函数返回多个值。

2.元组比列表更轻量级。

3.它作为一个容器填充多个东西。

4.我们可以将它们用作字典中的关键字。

7.设置 Set

在所有的Python数据类型中,该集合是支持像联合,交集,对称差异等数学运算的集合。

一个集合是唯一和不可变对象的无序集合。它的定义从括起括号{}开始,其中的项用逗号分隔。由于该集合从数学中的“Set”派生出来,所以它不能有多个相同元素的出现。

为什么需要Set?

设置类型比列表有明显的优势。它实现了一个高度优化的方法,用于检查容器是否托管特定的元素。这里使用的机制是基于一个称为哈希表的数据结构。

创建一个集合

要创建一个集合,请使用序列或任何可迭代对象调用内置的set()函数。

另一种更简单的方法是指定花括号{}中包含的元素。

冻结的集合

冻结集是传统集合的加工形式。它是不可变的,只支持在不改变上下文中使用的冻结集的情况下执行的方法和运算符。

现在,看一个完整的例子,以突出正常和冻结集之间的区别。

8. Dictionaries字典

Python中的字典是键值对的无序集合。它是Python中的一种内置映射类型,其中键映射到值。这些键值对提供了一种直观的方式来存储数据。

为什么需要字典?

该字典解决了高效存储大型数据集的问题。Python已经使字典对象高度优化以检索数据。

创建一个字典

用于创建字典的Python语法使用大括号{},其中每个项目显示为一对键和值。关键和值可以是任何Python数据类型。

使用键访问字典元素

字典就像一个数据库。在这里,我们不像使用列表那样使用数字来获取特定的索引值。相反,我们用一个键替换它,然后使用键来获取它的值。

字典访问元素的方法

Python公开以下内置的字典功能。

(一)keys() -它将字典中的键分离出来。

(二)values() -它隔离字典中的值。

(三)items() -它以(键,值)对的列表样式返回项目。

修改字典(添加/更新/删除)

由于字典对象是可变的,所以我们可以调用字典对象的添加,更新和删除操作。

有关如何修改字典的更多信息,请参见下面的示例。

本章小结 - Python数据类型

这篇文章涵盖了各种Python数据类型,并尝试用例子解释它们中的每一个。您可以在这里找到所有相关信息,这些信息对您在开发Python程序中可能有用。

如果你今天学到了新东西,那么别介意进一步分享它。并且可以关注我后续一系列Python的相关文章。

相关推荐

全网第一个讲清楚CPK如何计算的Step by stepExcel和Python同时实现

在网上搜索CPK的计算方法,几乎全是照搬教材的公式,在实际工作做作用不大,甚至误导人。比如这个又比如这个:CPK=min((X-LSL/3s),(USL-X/3s))还有这个,很规范的公式,也很清晰很...

[R语言] R语言快速入门教程(r语言基础操作)

本文主要是为了从零开始学习和理解R语言,简要介绍了该语言的最重要部分,以快速入门。主要参考文章:R-TutorialR语言程序的编写需要安装R或RStudio,通常是在RStudio中键入代码。但是R...

Python第123题:计算直角三角形底边斜边【PythonTip题库300题】

1、编程试题:编写一个程序,找出已知面积和高的直角三角形的另外两边(底边及斜边)。定义函数find_missing_sides(),有两个参数:area(面积)和height(高)。在函数内,计算另外...

Tensor:Pytorch神经网络界的Numpy

TensorTensor,它可以是0维、一维以及多维的数组,你可以将它看作为神经网络界的Numpy,它与Numpy相似,二者可以共享内存,且之间的转换非常方便。但它们也不相同,最大的区别就是Numpy...

python多进程编程(python多进程进程池)

forkwindows中是没有fork函数的,一开始直接在Windows中测试,直接报错importosimporttimeret=os.fork()ifret==0:...

原来Python的协程有2种实现方式(python协程模型)

什么是协程在Python中,协程(Coroutine)是一种轻量级的并发编程方式,可以通过协作式多任务来实现高效的并发执行。协程是一种特殊的生成器函数,通过使用yield关键字来挂起函数的执行...

ob混淆加密解密,新版大众点评加密解密

1目标:新版大众点评接口参数_token加密解密数据获取:所有教育培训机构联系方式获取难点:objs混淆2打开大众点评网站,点击教育全部,打开页面,切换到mobile模式,才能找到接口。打开开发者工具...

python并发编程-同步锁(python并发和并行)

需要注意的点:1.线程抢的是GIL锁,GIL锁相当于执行权限,拿到执行权限后才能拿到互斥锁Lock,其他线程也可以抢到GIL,但如果发现Lock仍然没有被释放则阻塞,即便是拿到执行权限GIL也要立刻...

10分钟学会Python基础知识(python基础讲解)

看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了。最好还是把代码敲一下。一、函数基础简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。...

Python最常见的170道面试题全解析答案(二)

60.请写一个Python逻辑,计算一个文件中的大写字母数量答:withopen(‘A.txt’)asfs:count=0foriinfs.read():ifi.isupper...

Python 如何通过 threading 模块实现多线程。

先熟悉下相关概念多线程是并发编程的一种方式,多线程在CPU密集型任务中无法充分利用多核性能,但在I/O操作(如文件读写、网络请求)等待期间,线程会释放GIL,此时其他线程可以运行。GIL是P...

Python的设计模式单例模式(python 单例)

单例模式,简单的说就是确保只有一个实例,我们知道,通常情况下类其实可以有很多实例,我们这么来保证唯一呢,全局访问。如配置管理、数据库连接池、日志处理器等。classSingleton: ...

更安全的加密工具:bcrypt(bcrypt加密在线)

作为程序员在开发工作中经常会使用加密算法,比如,密码、敏感数据等。初学者经常使用md5等方式对数据进行加密,但是作为严谨开发的程序员,需要掌握一些相对安全的加密方式,今天给大家介绍下我我在工作中使用到...

一篇文章搞懂Python协程(python协程用法)

前引之前我们学习了线程、进程的概念,了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位。按道理来说我们已经算是把cpu的利用率提高很多了。但是我们知道无论是创建多进程还是创建多线...

Python开发必会的5个线程安全技巧

点赞、收藏、加关注,下次找我不迷路一、啥是线程安全?假设你开了一家包子铺,店里有个公共的蒸笼,里面放着刚蒸好的包子。现在有三个顾客同时来拿包子,要是每个人都随便伸手去拿,会不会出现混乱?比如第一个顾...

取消回复欢迎 发表评论: