Python 教程 - 基本数据类型和类型转换

Python 的数据类型主要分为以下三种:

  1. 数值类型: int , float , bool

  2. 字符串类型: str

  3. 容器类型: list , dict , tuple

数值数据类型

整数

我们在前一篇变量介绍的部分中,曾经声明过一个变量 x ,并且让 x = 1 , x 就是一个整数( integer)。如果要获取变量的数据类型,可以使用 type() 这个函数来查询。下面来试着打印出 x 这个变量以及 x 所属于的数据类型:

scss 复制代码
x = 1
print(x)
print(type(x))

执行结果如下:

打印出 type(x) 会得到 x 的类型 int ,表示 x 是一个整数。

浮点数

上面 x = 1 中 x 是一个整数,如果改写成 x = 1.5 ,此时 x 就不是整数了,而是浮点数。

scss 复制代码
x = 1.5
print(x)
print(type(x))

你也可以自己试试看把 x 设成 3.14 或是 1.732 ,会发现到它们的数据类型都是 float

布尔值

在 Python 布尔类型只有两种取值 : True 还有 False ,下面我们来写一个示例:

python 复制代码
a = True
print(a)
print(type(a))

运行上面的代码后,执行结果如下:

打印出 type(a)后 ,会看到 'bool' ,表示 a 的数据类型是 bool ,也就是布尔类型。你也可以试着把 a = True 改成 a = False ,所打印出的 type(a) 也会相同,因为他们都是布尔值。

布尔值通常是一个条件判断的结果,示例如下 :

ini 复制代码
a = 1
b = 2
print(a==b)

其中 a==b 是一个比较运算,会返回 a 是否等于 b。因为 a 的值是 1、b 的值是 2,所以 a 不会等于 b。 a==b 的结果就是 False

字符串类型

字符串是以单引号 ( ' )或双引号( " )所包起来的 文本 ,由一连串 Unicode 字符所组成。例如:

bash 复制代码
song = "Hello, Goodbye"
print(song)
print(type(song))

执行的结果如下:

没有规定一定使用单引号或是双引号来定义字符串,但如果字符串中本身就包含单引号或是双引号,就可以使用另一种引号以做区分。

比如想要打印出这个字符串:"Bohemian Rhapsody" is a song by the British rock band Queen.

bash 复制代码
print(""Bohemian Rhapsody" is a song by the British rock band Queen.")

其中 "Bohemian Rhapsody" 这部分使用 " 括起来,会使 Python 认为要打印出的字符串为 ""(空字符串)、以及 " is a song by the British rock band Queen." ,因而出现错误。

此时比较好的做法就是改用单引号来表示字符串。

swift 复制代码
print('"Bohemian Rhapsody" is a song by the British rock band Queen.')

改成这样就会打印出想要的结果了

字符串的运算

字符串处理是 Python 的强项之一。 在 Python 中,支持许多字符串的运算方式。以下介绍四种很常见的功能:

字符串相加

+ 这个运算符号能够将两个字符串连接起来,例如:

ini 复制代码
str1 = "Lucy in the sky"
str2 = " with diamonds"
print(str1 + str2)

运算的结果如下:

重复打印出字符串

利用 * 可以重复字符串的内容。前面在讲 print 时有提到这个功能。只需要输入字符串与 * 再加上想要重复打印出的字符串即可。例如:

python 复制代码
str = "bug "
print(str*3)

执行的结果:

计算字符串长度

利用 len() 这个函数会返回字符串的长度,例如:

python 复制代码
str = "Python"
print(str)
print(len(str))

执行的结果会如下,len() 返回了6,代表字符串 str 中总共有六个字符。

取出部分字符串

利用中括号 [] 可以取出字符串的部份内容。 跟生活中我们在数数字时从 1 开始数不同,字符串的索引值(index)是从 0 开始的, str[4] 代表要取出 str 字符串里面的 第 5 个字符 "o"

ini 复制代码
str = "Python"
str[4]

如果想要取出某一个范围的字符串时,就在括号中设定开始与结束的位置,也就是左边界与右边界。

值得注意的是,字符串只会取到所设定结束位置的前一个字符,并不会包含右边界的本身。所以 str[1:4] 就是从 str 字符串中的第二个字符取到第四个字符,不会包含 str[4] 本身。

ini 复制代码
str = "Python"
str[1:4]
str[4]

可以看到, str[1:4] 是取第二到第四个字符,也就是 index 1~3 所代表的字符,并不会包含到 str[4] 这个字符。

类型转换

我们可以将一个值从一种类型转变为另外一种类型,这样的过程就叫做类型转换。

如果想要将一个类型为浮点数的值转变为整数的数据类型,我们会使用 int() 这个函数来作转换。 以下是将 float 转成 int 的结果:

scss 复制代码
floatNum = 55.0
intNum = int(floatNum)
print(floatNum)
print(intNum)
print(type(floatNum))
print(type(intNum))

而如果是想要将一个字符串转为整数呢?

scss 复制代码
stringNum = "55"
intNum = int(stringNum)
print(stringNum)
print(intNum)
print(type(stringNum))
print(type(intNum))

如果是想要将 55.55 转换成整数呢?可以自己尝试在 Jupyter Notebook 上转换看看。 转换成整数过后,小数点会直接被舍去掉,变成 55

如果要转换其它数据类型,可以试试 str()float()chr() 这些函数,会将原本的值分别转换为字符串、浮点数以及字符。

值得注意的是,如果本来的值就无法这样转换 (例如想要把字符串转换成整数),就会出现 Value Error。

现在我们学会了 Python 中的数值、字符串与字符的数据类型,以及不同类型之间的转换方式,下一篇将会介绍程序语言很重要的精髓之一,条件判断,可以让你的程序根据不同的状况来执行不同结果。

相关推荐
wt_cs3 分钟前
银行回单ocr api集成解析-图像文字识别-文字识别技术
开发语言·python
_WndProc25 分钟前
【Python】Flask网页
开发语言·python·flask
互联网搬砖老肖27 分钟前
Python 中如何使用 Conda 管理版本和创建 Django 项目
python·django·conda
深栈解码29 分钟前
JMM深度解析(三) volatile实现机制详解
java·后端
张家宝683736 分钟前
ambari
后端
测试者家园38 分钟前
基于DeepSeek和crewAI构建测试用例脚本生成器
人工智能·python·测试用例·智能体·智能化测试·crewai
StephenCurryFans38 分钟前
Spring AI vs LangChain4j:Java AI开发框架完整对比指南 🚀
后端·spring
程序员辉哥42 分钟前
学会在Cursor中使用Rules生成代码后可以躺平了吗?
前端·后端
大模型真好玩43 分钟前
准确率飙升!Graph RAG如何利用知识图谱提升RAG答案质量(四)——微软GraphRAG代码实战
人工智能·python·mcp
Brookty44 分钟前
【MySQL】JDBC编程
java·数据库·后端·学习·mysql·jdbc