栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

「Python语法结构」数据类型与运算符示例(3)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

「Python语法结构」数据类型与运算符示例(3)

变量的数据类型与赋值

功能要求

定义一个整型变量,一个浮点型变量,一个字符串变量,并为这些变量赋值,将这些变量在控制台显示。

实例代码

counter = 100           # 赋值整型变量

miles = 1000.0          # 浮点型

name = "John"           # 字符串

isMale = True           # 布尔类型

realNumber = 1 + 1j     # 复数类型

print(counter, miles, name, isMale, realNumber)



a = b = c = 1           # 一个值赋值给多个变量

print(a, b, c)

a, b, c = 1, 2, "abc"   # 同时为多个变量赋值

print(a, b, c)

运行结果

100 1000.0 John True (1+1j)

1 1 1

1 2 abc

知识说明

变量值就是赋给变量的数据,Python中有6个标准的数据类型,分别为数字(Numbers)、字符串(String)、列表(List)、元组(Tuple)、字典(Dictionary)、集合(Sets)。其中列表、元组、字典、集合属于复合数据类型。

最简单的变量赋值就是把一个变量值赋给一个变量名,只需要用等号(=)来实现。

Python支持的数值型数据类型由int、float、bool、complex。

数值型数据类型

中文解释

示例

int

整数类型

10;100;1000

float

浮点型

1.0;0.11;1e-12

bool

布尔型

True;False

complex

复数

1 + 1j;0.123j;1 + 0j

int类型指整数数值,整型字面值的表示有四种方式,分别是十进制、二进制(以“0b”或“0B”开头)、八进制(以“0o”或“0O”开头)和十六进制(以“0x”或“0X”开头)

float类型指即有整数又有小数部分的数据类型。浮点型字面值可以用十进制或科学计数法表示。Python中的科学计数法表示如下:

<实数>E或者e<整数>

其中,E或e表示基是10,后面的整数表示指数,指数的正负使用+或者-表示,其中,+可以省略。

bool类型只有True(真)和False(假)两种值,因为bool继承了int类型,即在这两种类型中True可以等价于数值1,False可以等价于数值0,并且可以直接使用bool值进行数字运算。

以下对象的布尔值都是False:(1)None;(2)False(布尔型);(3)0(整型0);(4)0.0(浮点型0);(5)0.0 + 0.0j(复数0);(6)""(空字符串);(7)[](空列表);(8)()(空元组);(9){}(空字典)。用户自定义的类实例,如果对于了方法nonzero()或len(),那么这些方法会返回0或False。除了上述对象之外的所有其他对象的布尔值都为True。

complex类型由实数部分和虚数部分构成,它有以下两个特点:

复数由实数部分和虚数部分构成,表示为real+imagj或real+imagJ。

复数的实数部分real和虚数部分imag都是浮点型。

需要主要的是,一个复数必须有表示虚部的实数和j,如1j、-1j都是复数,而0.0不是复数,并且表示虚部的实数部分即使是1也不能省略。

查看数据类型及变量内存变化

功能要求

使用type查看数据类型。变量在内存空间中的变化。

实例代码

x = 4; y = x

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))



x = 2

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))

print(type(x))

运行结果

x =  4 y =  4 id(x) =  2788302651728 id(y) =  2788302651728

x =  2 y =  4 id(x) =  2788302651664 id(y) =  2788302651728

知识说明

在Python中,变量不需要先声明,创建时直接对其赋值即可,变量类型由赋给变量的值决定。一旦创建了一个变量,就需要给变量赋值。

变量好比一个标签,指向内存空间的一块特定的地址。创建一个变量时,在机器的内存中,系统会自动给该变量分配一块内存,用于存放变量值。

id(x):通过id函数可以具体查看创建变量和变量重新赋值时内存空间的变化过程。

type(x):查看变量a的数据类型,可以使用type()来判断变量所存在内容是什么类型。

一个变量在初次赋值时会获得一块内存空间来存放变量。当一个变量等于另一个变量时,其实是一种内存的地址传递,两个变量的内存地址相同,当其中一个变量值发生变化后,另一个变量值不会发生变化。当变量值发生变化时,系统会重新分配一块内存空间存放新的变量值。

查看变量数据类型和值

功能要求

查看并显示变量的数据类型和值。

实例代码

x = 4; y = x

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))

x = 2

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))

print(type(x))

x = 4; y = x

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))



x = 2

print("x = ", x, "y = ", y, "id(x) = ", id(x), "id(y) = ", id(y))

print(type(x))

运行结果

this is a words.

233

代码分析

type(words):查看words所存数据的数据类型,结果为“”,表示words所存数据是str型,也就是字符串。

type(number):查看number所存数据的数据类型,结果为“”,表示number所存数据是int型,也就是整型。

变量的类型转换

功能要求

将字符串类型转换为数字类型。

实例代码

words = '123'

number = int(words)

print("变量words的数据类型:",type(words))

print("变量number的数据类型:",type(number))

运行结果

变量words的数据类型:

变量number的数据类型:

知识说明

纯数字和带引号的字符串不是同一种类型,但是一些特定类型可以相互转换,例如字符串'123'可以转化成数字123。

int()就是将数据转换成整型类型的语句。同样的,要转换成什么类型,就写成目标类型名即可,例如str()就可以把数字转换成字符串、float()可以转成小数类型。

type()可以用来查看当前变量的类型,结果会是数据的类型名。

数据类型之间的相互转换

功能要求

分别使用int函数、bool函数对数据类型进行转换

实例代码

print(int(1.56),int(0.156),int(-1.56),int())

print(int(True),int(False))

print(int(1 + 23j))

运行结果

1 0 -1 0

1 0

Traceback (most recent call last):

  File "E:CodePythonCodehello.py", line 3, in

    print(int(1 + 23j))

TypeError: int() argument must be a string, a bytes-like object or a real number, not 'complex'

实例代码

print(bool(1), bool(2), bool(0))

print(bool(1.0), bool(2.3), bool(0.0))

print(bool(1 + 23j), bool(23j))

print(bool(), bool(""), bool([]), bool(()), bool({}))

运行结果

True True False

True True False

True True

False False False False False

知识说明

在Python中可以实现数值型数据类型的转换,使用的内置函数有int、float、bool、complex。

1. int函数转换:int浮点数转换为整数的过程中,将小数部分剔除,保留整数部分;int空的结果为0;布尔转整型时,bool值True被转成整数1,False被转成整数0;复数不能转换成整型。

2. bool函数转换:非0数值转换成布尔类型值都为True,数值0转换布尔类型为False。用bool函数分别对空、空字符、空列表、空元组、空字典(或集合)进行转换时结果都为空,如果是非空,结果是True(除了非数值0的情况)。

数据类型转换

转换类型

示例

其他类型转换为整型

例:num = int(input("请输入一个数字:"))

其他类型转换为浮点型

例:num = float(input("请输入一个数字:"))

其他类型转换为字符串类型

例:s = str(1.3)

类型转换在实际编程中会经常遇到。例如,对用户输入的两个数字求和,在把结果打印输出。如果不经过类型转换的话,计算机最终指向的是两个字符串的连接。因为,input()会把用户的输入保存为字符串类型,“+”对字符串进行的连接操作,因此必须先将输入的字符串转换为数字类型,才能进行数值运算。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/920968.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号